if(typeof loupePath=="undefined") var loupePath = "vml/";var tmp = navigator.appName == 'Microsoft Internet Explorer' && navigator.userAgent.indexOf('Opera') < 1 ? 1 : 0;
if(tmp) var isIE = document.namespaces ? 1 : 0;
    
if(isIE) {
if(document.namespaces['v']==null) {
var e=["shape","shapetype","group","background","path","formulas","handles","fill","stroke","shadow","textbox","textpath","imagedata","line","polyline","curve","roundrect","oval","rect","arc","image"],s=document.createStyleSheet(); 
for(var i=0; i<e.length; i++) {s.addRule("v\\:"+e[i],"behavior: url(#default#VML);");} document.namespaces.add("v","urn:schemas-microsoft-com:vml");

}var imgreso = new Image;  function roundTo(val,dig) {
var num = val;
if(val > 8191 && val < 10485) {
val = val-5000;
num = Math.round(val*Math.pow(10,dig))/Math.pow(10,dig);
num = num+5000;
}else {
num = Math.round(val*Math.pow(10,dig))/Math.pow(10,dig);
}
return num;
}function LoupeMouseDown(event) {
if (!event) event = window.event;
document.body.div = this;
this.inDrag = true;
if(event.pageX) {
this.startX = event.pageX;
this.startY = event.pageY;
}else if (event.clientX) {
this.startX = event.clientX;
this.startY = event.clientY;
}else {
return;
}
}function LoupeMouseUp() {
if(this.inDrag) {
this.inDrag = false;
document.body.div = null;
}
}function LoupePosition() {
var image = document.getElementById(this.iName);
var fill = document.getElementById(this.iName+"_Pos");
var left = Math.max(this.xMin,Math.min(this.xMax,Math.round(this.xPos-this.width/2)));
var top = Math.max(this.yMin,Math.min(this.yMax,Math.round(this.yPos-this.height/2)));
var xSrc = Math.round(Math.min((left-this.xMin)*this.xMulti,this.cWidth-this.size));
var ySrc = Math.round(Math.min((top-this.yMin)*this.yMulti,this.cHeight-this.size));
var xf = -(xSrc/(this.size+1)); var yf = -(ySrc/(this.size+1));
if(document.documentMode==8) {fill.position=xf+','+yf;}else {fill.setAttribute('position', xf+','+yf);}
this.style.left = left + "px"; this.style.top = top + "px";
}function LoupeDrag(event) {
if(!event) event = window.event;
var div = this.div; 
if(div && div.inDrag) {
var eventX; var eventY;
if (event.pageX) {
eventX = event.pageX;
eventY = event.pageY;
}else if (event.clientX) {
eventX = event.clientX;
eventY = event.clientY;
}else {
return;
}
div.xPos += eventX-div.startX;
div.yPos += eventY-div.startY;
div.startX = eventX;
div.startY = eventY; document.getElementById("ceshi").innerHTML=div.xPos +","+div.yPos ; 
div.position();

}
}function toggleLoupeVisibility() {
var obj = document.getElementById(this.id + "Loupe");
if(obj.style.visibility=='hidden'||obj.style.visibility=='') {
obj.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + loupePath + "loupe.png',sizingMethod='scale')";
obj.style.visibility = 'visible';
}else { obj.style.visibility = 'hidden';
}
}

function createLoupe(imgname,display,xpos,ypos,ch) {
var size = 146; var image = document.getElementById(imgname);
    
if(image) image.style.cursor = 'default'; 
if(image && image.width>=size && image.height>=size) {
image.style.msInterpolationMode="bicubic";
image.setAttribute("alt", ""); image.alt="";
var width = 214; var height = 179; 
var radius = size/2; var toggle;
var xoff = 8; var yoff = 6; 
var iconw = 40; var iconh = 32;
var object = image.parentNode;

object.style.position = 'relative';
var nameaa;
if(!document.getElementById(imgname + "_")) {
var toggle = document.createElement("div");
toggle.id = imgname + "_";

toggle.title = "switch Loupe on/off";
toggle.width = iconw; toggle.height = iconh;
toggle.left = image.width-iconw; 
toggle.top = image.height-iconh;
toggle.style.position = 'absolute';
toggle.style.height = iconh+'px'; 
toggle.style.width = iconw+'px';
toggle.style.left = image.width-iconw + 'px';
toggle.style.top = image.height-iconh + 'px';
toggle.style.cursor = 'pointer';
toggle.style.zindex = 9990;
toggle.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + loupePath + "icon.png')";
toggle.onclick = toggleLoupeVisibility;
object.appendChild(toggle);
}

       
if(!document.getElementById(imgname + "_Loupe")) 
{  
  
var div = document.createElement("div");
div.id = imgname + "_Loupe";
div.width = width; div.height = height;
div.left = 0; div.top = 0;
var tmp = new Image; tmp.src = image.src;
var xfac = roundTo(tmp.width/image.width,4);
var yfac = roundTo(tmp.height/image.height,4);
div.cWidth = tmp.width; 
div.cHeight = tmp.height;
delete tmp;
div.xMulti = xfac;
div.yMulti = yfac;
if(xpos!=null||ypos!=null) {
var x = Math.round(xpos!=null?Math.max(1,Math.min(xpos,div.cWidth)):1); 
var y = Math.round(ypos!=null?Math.max(1,Math.min(ypos,div.cHeight)):1); 
div.xPos = ((width/2)-radius-xoff)+(x/xfac); 
div.yPos = ((height/2)-radius-yoff)+(y/yfac);
}else {
div.xPos = width/2; 
div.yPos = height/2;
}
div.crossHair = (ch!=1?false:true); 
div.iName = imgname; 
div.iWidth = image.width; 
div.iHeight = image.height;
div.size = size;
div.radius = radius;
div.xOff = xoff; 
div.yOff = yoff;
div.xMin = -(radius+xoff)+(radius/xfac); 
div.yMin = -(radius+yoff)+(radius/yfac); 
div.xMax = image.width-(radius+xoff)-(radius/xfac); 
div.yMax = image.height-(radius+yoff)-(radius/yfac); 
div.style.width = width+'px';
div.style.height = height+'px';
div.style.position = 'absolute';
div.style.visibility = (display?'visible':'hidden');
div.style.left = 0+'px';
div.style.top = 0+'px';
div.style.cursor = 'move';
div.style.zindex = 9997;
div.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + loupePath + "loupe.png',sizingMethod='scale')";
div.onmousedown = LoupeMouseDown;
div.onmouseup = LoupeMouseUp;
document.body.onmousemove = LoupeDrag;
div.position = LoupePosition;
object.appendChild(div);
if(!document.getElementById(imgname + "_Grab")) {
         var vml = document.createElement('v:oval');
         vml.id = imgname + "_Grab";
vml.setAttribute('filled', 'true');
vml.setAttribute('fillcolor', '#ffffff');
vml.setAttribute('stroked', 'false');
vml.setAttribute('strokeweight', '0');
vml.style.position = 'absolute';
vml.style.left = xoff-1;
vml.style.top = yoff-1;
vml.style.width = size+1;
vml.style.height = size+1;
vml.style.zindex = 9998;
var fil = document.createElement('v:fill');
         fil.id = imgname + "_Pos";
fil.setAttribute('alignshape', 'false');
fil.setAttribute('position', '0,0');
fil.setAttribute('type', 'tile');
fil.setAttribute('src', image.src);
vml.appendChild(fil);
div.appendChild(vml);
}


if(!document.getElementById(imgname + "_Lens")) {
var len = document.createElement("div");
len.id = imgname + "_Lens";
len.width = size; len.height = size;
len.left = xoff; len.top = yoff;
len.style.position = 'absolute';
len.style.width = size+'px';
len.style.height = size+'px';
/* len.style.visibility = (display?'visible':'hidden'); */
len.style.left = xoff+'px';
len.style.top = yoff+'px';
len.style.zindex = 9999;
len.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + loupePath + "lens.png',sizingMethod='scale')";
div.appendChild(len);
}
div.position();
}
 if(document.getElementById(imgname + "_Pos")) 
{  
document.getElementById(imgname + "_Pos").src=image.src;

        }


}
}

function initLoupe(id,display,xpos,ypos,ch) {
if(isIE && imgreso.src.match(/loupe.png$/) && imgreso.width==214 && imgreso.height==179) {
createLoupe(id,display,xpos,ypos,ch);
}else {
imgreso.onload = function() {  
if((isIE && imgreso.complete==true) || (isIE && imgreso.width==214 && imgreso.height==179)) {
createLoupe(id,display,xpos,ypos,ch);
}
}
imgreso.src = loupePath + "loupe.png"; 

}是不是vml的关系? 我copy的代码

解决方案 »

  1.   

    中国建设银行股份有限公司苏州相城支行
    中国建设银行股份有限公司苏州市渭塘支行
    中国建设银行股份有限公司苏州市蠡口支行
    中国建设银行股份有限公司苏州市黄埭分理处
    中国建设银行股份有限公司苏州市北桥支行
    中国建设银行股份有限公司苏州市湘城分理处
    中国建设银行股份有限公司苏州市望亭支行
    中国建设银行股份有限公司苏州市陆慕分理处
    中国建设银行股份有限公司苏州吴中支行
    中国建设银行股份有限公司苏州世茂城储蓄所
    中国建设银行股份有限公司苏州市西山分理处
    中国建设银行股份有限公司苏州市东山分理处
    中国建设银行股份有限公司苏州市木渎支行
    中国建设银行股份有限公司苏州市新沧分理处
    中国建设银行股份有限公司苏州胥口支行
    中国建设银行苏州市都市花园储蓄所
    中国建设银行股份有限公司苏州市东环路分理处
    中国建设银行股份有限公司苏州市科技园分理处
    中国建设银行股份有限公司苏州湖畔花园分理处
    中国建设银行股份有限公司苏州星都分理处
    中国建设银行股份有限公司苏州城中支行
    中国建设银行股份有限公司苏州市金阊支行
    中国建设银行股份有限公司苏州市东中市分理处
    中国建设银行股份有限公司苏州市虎丘分理处
    中国建设银行股份有限公司苏州胥江支行
    中国建设银行股份有限公司苏州市新民桥分理处
    中国建设银行股份有限公司苏州市环秀分理处
    中国建设银行股份有限公司苏州市兴元分理处
    中国建设银行股份有限公司苏州市金门路储蓄所
    中国建设银行股份有限公司苏州市城中储蓄所
    中国建设银行股份有限公司苏州市新庄分理处
    中国建设银行股份有限公司苏州市彩虹储蓄所
    中国建设银行股份有限公司苏州市桐泾分理处
    中国建设银行股份有限公司苏州市烽火路储蓄所
    中国建设银行股份有限公司苏州市泰让桥分理处
    中国建设银行股份有限公司苏州市新康分理处
    中国建设银行股份有限公司苏州高速铁路分理处
    中国建设银行股份有限公司苏州分行
    中国建设银行股份有限公司苏州市用(lu)直支行
    中国建设银行股份有限公司苏州市木渎中山储蓄所
    中国建设银行股份有限公司苏州市龙西分理处
    中国建设银行股份有限公司苏州市碧波储蓄所
    中国建设银行股份有限公司苏州长春路支行
    中国建设银行股份有限公司苏州市南环分理处
    中国建设银行股份有限公司苏州市吴中东路储蓄所
    中国建设银行股份有限公司苏州市新市路分理处
    中国建设银行股份有限公司苏州市越溪分理处
    中国建设银行股份有限公司吴中经济开发区支行
    中国建设银行股份有限公司苏州市长桥支行
    中国建设银行股份有限公司苏州市东苑支行
    中国建设银行苏州分行
    中国建设银行股份有限公司苏州市干将路支行
    中国建设银行股份有限公司苏州高新技术产业开发区支行
    中国建设银行股份有限公司苏州市枫桥分理处
    中国建设银行股份有限公司苏州市浒关分理处
    中国建设银行股份有限公司苏州市横塘分理处
    中国建设银行股份有限公司苏州市索山储蓄所
    中国建设银行股份有限公司苏州市何山分理处
    中国建设银行股份有限公司苏州市新桥分理处
    中国建设银行股份有限公司苏州市通安分理处
    中国建设银行股份有限公司苏州市东渚分理处
    中国建设银行股份有限公司苏州市名城花园分理处
    中国建设银行股份有限公司苏州沧浪支行
    中国建设银行股份有限公司苏州市人民桥分理处
    中国建设银行股份有限公司苏州平江支行
    中国建设银行股份有限公司苏州市三香路分理处
    中国建设银行股份有限公司苏州桃花坞支行
    中国建设银行股份有限公司苏州市葑门分理处
    中国建设银行股份有限公司苏州市葑谊分理处
    中国建设银行股份有限公司苏州市钟楼分理处
    中国建设银行股份有限公司苏州市白塔储蓄所
    中国建设银行股份有限公司苏州市百家巷分理处
    中国建设银行股份有限公司苏州市苏锦分理处
    中国建设银行股份有限公司苏州市南园分理处
    中国建设银行股份有限公司苏州市五卅路分理处
    中国建设银行股份有限公司苏州市木杏分理处
    中国建设银行股份有限公司苏州工业园区支行
    中国建设银行苏州市洋桥储蓄所
    中国建设银行苏州市苏安新村储蓄所
    中国建设银行股份有限公司苏州市跨塘分理处
    中国建设银行股份有限公司苏州市斜塘分理处
    中国建设银行股份有限公司苏州市胜浦分理处
    中国建设银行股份有限公司苏州黄桥分理处