// JavaScript Document

/* cssの画像置換要素を画像に変換 */
/*
@example  $(".image").changeimage("png", "images/");
@before   <h1 id="heading1" class="image">Heading 1</h1>
          <h2 class="image {src:heading2.png}">Heading 2</h2>
@result   <h1 id="heading1" class="image"><img alt="Heading 1" src="images/heading1.png"></h1>   
          <h2 class="image {src:heading2.png}"><img alt="Heading 2" src="images/heading2.png"></h2>   
@example  $(".image").changeimage("gif"); // use same folder as page
@before   <h1 id="heading1" class="image">Heading 1</h1>
@result   <h1 id="heading1" class="image"><img alt="Heading 1" src="heading1.gif"></h1>   
*/

jQuery.fn.changeimage = function(format, path, onload)
{
	if(!document.images) return this;
	path = path || "";
	this.each(
		function()
		{
			var img = $("<img>"), el = jQuery(this);
			var file;
			var re = /(?:{src\:)(\S+)(?:})/i;
			var m = this.className.match(re);
			if(m)
			{
				file = path + m[1];
			}
			else
			{
				file = path + this.id + "." + format;
			}
			
			jQuery(img).attr(
			{
				src: file,
				alt: el.text()
			}).load(typeof onload == "function" ? onload : function(){} );
			var a = el.find("a");
			var toAppend = a.length ? a.empty().append(img) : img;
			el.empty().append(toAppend);
		}
	)
	return this;
};
jQuery.fn.smoothscroll = function(speed, easing) {
	if(!$(this)[0].hash || $(this)[0].hash == "#") {
		return false;
	}
	return this.each(function() {
		var targetOffset = $($(this)[0].hash).offset().top;
		$('html,body').animate({scrollTop: targetOffset}, speed, easing);
	});
};


