﻿   //<![CDATA[

var previewBox = document.getElementById('PreviewBox');
var previewImage = document.getElementById('PreviewImage');
var previewUrl = document.getElementById('previewUrl');
var previewFrom = null;
var previewTimeoutId = null;
var loadingImg = '../images/loading.gif';
var maxWidth = 250;
var maxHeight = 250;

/**
   * 获取页面元素的坐标
   */
function getPosXY(a, offset) {
   var p=offset?offset.slice(0):[0,0],tn;
   while(a) {
    tn=a.tagName.toUpperCase();
    if (tn == 'img') {
     a = a.offsetParent;
     continue;
    }
    p[0]+=a.offsetLeft-(tn=="div"&&a.scrollLeft?a.scrollLeft:0);
    p[1]+=a.offsetTop-(tn=="div"&&a.scrollTop?a.scrollTop:0);
    if (tn=="body") break;
    a=a.offsetParent;
   }
   return p;
}
function checkComplete() {
   if (checkComplete.__img && checkComplete.__img.complete)
    checkComplete.__onload();
}
checkComplete.__onload = function() {
   clearInterval(checkComplete.__timeId);
   var w = checkComplete.__img.width;
   var h = checkComplete.__img.height;
   if (w >= h && w > maxWidth) {
    previewImage.style.width = maxWidth + 'px';
   }
   else if (h >= w && h > maxHeight) {
    previewImage.style.height = maxHeight + 'px';
   }
   else {
    previewImage.style.width = previewImage.style.height = '';
   }
   previewImage.src = checkComplete.__img.src;     
   //-----------Modify by Hu------------------
   //previewUrl.href = checkComplete.href; 
   checkComplete.__img = null;
   //previewImage.style.display = '';
}
/**
   * 500毫秒后激发预览操作
   */
function showPreview(e) {
   hidePreview();
   previewFrom = e.target || e.srcElement;
   previewImage.src = loadingImg;
   previewImage.style.width = previewImage.style.height = '';
   previewTimeoutId = setTimeout('_showPreview()', 500);
   checkComplete.__img = null;
}

/**
   * 取消预览
   */
function hidePreview(e) {
   if (e) {
    var toElement = e.relatedTarget || e.toElement;
    //alert(toElement.innerHTML);
    while (toElement) {
     if (toElement.id == 'PreviewBox')
      return;
     toElement = toElement.parentNode;
    }
   }
     try{
    clearInterval(checkComplete.__timeId);
    checkComplete.__img = null;
    previewImage.src = null;
   }
   catch (e){
   }
   clearTimeout(previewTimeoutId);
   previewBox.style.display = 'none';
}
/**
   *   预览操作
   */
function _showPreview() {
   //previewImage.style.display = 'none';
   checkComplete.__img = new Image();
   if (previewFrom.tagName.toUpperCase() == 'A')
    previewFrom = previewFrom.getElementsByTagName('img')[0];
   //获取大图的URL
   var largeSrc = previewFrom.getAttribute("large-src");
   //-----------Modify by Hu------------------
   //取消点击预览图
   //var picLink = previewFrom.getAttribute("pic-link");
   if (!largeSrc) return;
   else {
    checkComplete.__img.src = largeSrc;
    //checkComplete.href = picLink;
    checkComplete.__timeId = setInterval("checkComplete()", 20);
    var pos = getPosXY(previewFrom, [20, 2]);
    previewBox.style.left = pos[0] + 'px';
    previewBox.style.top = pos[1] + 'px';
    previewBox.style.display = 'block';
   }
}
//]]>