/*
 * Image preview script
 * powered by jQuery (http://www.jquery.com)
 * 
 * written by Alen Grakalic (http://cssglobe.com)
 * 
 * for more info visit http://cssglobe.com/post/1695/easiest-tooltip-and-image-preview-using-jquery
 *
 */
/*
 * ※注意！
 * ※注意！「// 日本語」というコメントは止める！
 * ※注意！
 */
this.imagePreview = function(){

  /* CONFIG */
  xOffset = 200; /* Y 座標 offset */
  yOffset = 30;  /* X 座標 offset */
  h = 300;       /* 画像の高さ */
  lr = '';       /* マウスがブラウザの左右どちらにあるかを保持する */

  /* END CONFIG */
  jQuery("a.preview").hover(function(e){
			 this.t = this.title;
			 var comments = this.firstChild.alt;
			 var c = (this.t != "") ? this.t : "";

			 /* body 作成 */
			 jQuery("body").append("<p id='preview'><br /><img src='" + this.name +"' alt='Xmini smile' height='" + h + "' /><br />" + c + "<br /><br />" + comments + "</p>");
			 /* カーソルを default にする */
			 jQuery(this).css("cursor","default");

			 if (e.clientY > 200 && document.documentElement.clientHeight - e.clientY > 200) {
			   xOffset = 200;
			   if (e.pageY != e.clientY) {
			     xOffset = xOffset - (e.pageY - e.clientY);
			   }
			 } else if (e.clientY > 200 && document.documentElement.clientHeight - e.clientY < 200) {
			   xOffset = 400;
			   if (e.pageY != e.clientY) {
			     xOffset = xOffset - (e.pageY - e.clientY);
			   }
			 } else if (e.clientY < 200 && document.documentElement.clientHeight - e.clientY > 200) {
			   xOffset = 0;
			   if (e.pageY != e.clientY) {
			     xOffset = xOffset - (e.pageY - e.clientY);
			   }
			 } else {
			   xOffset = 200;
			   if (e.pageY != e.clientY) {
			     xOffset = xOffset - (e.pageY - e.clientY);
			   }
			 }
			 /* 左か右か？ */
			 if (e.pageX < Math.floor(document.body.clientWidth/2))
 			   {
			     /* 左 */
			     lr = 'left';
			     jQuery("#preview")
			       .css("top",(e.clientY - xOffset)+ "px")
			       .css("left",(e.pageX + yOffset) + "px")
			       .fadeIn("fast");
			   } else 
			   {
			     /* 右 */
			     lr = 'right';
			     jQuery("#preview")
			       .css("top",(e.clientY - xOffset) + "px")
			       .css("right",(document.body.clientWidth - e.pageX + yOffset) + "px")
			       .fadeIn("fast");
			   }
		       },
		       /* マウスが外れた時の処理 */
		       function(){
			 /* reset Offset */
			 xOffset  = 200;
			 yOffset  = 50;
			 jQuery("#preview").remove();
		       });
  /* マウスが移動した時の処理 */
  jQuery("a.preview").mousemove(function(e){
			     /* カーソルを default にする */
			     jQuery(this).css("cursor","default");
			     if (lr == 'left') {
			       /* 左 */
			       jQuery("#preview")
				 .css("top",(e.clientY - xOffset) + "px")
				 .css("left",(e.pageX + yOffset) + "px");
			     } else {
			       /* 右 */
			       jQuery("#preview")
				 .css("top",(e.clientY - xOffset) + "px")
				 .css("right",(document.body.clientWidth - e.pageX + yOffset) + "px");
			     }
			   });

  /* クリックしても何もしないようにする */
  jQuery("a.preview").click(function(){
			 return false;
		       });

};


// starting the script on page load
jQuery(document).ready(function(){
	imagePreview();
});
