在开发的过程中,经常会遇见一些绑定数据的东西。有的时候会牵扯到图片的展示,但是因为图片的大小很难保证,致使页面的布局出现混乱。如果固定展示区域的大小,又往往会造成图像失真。
后来,想到了一招稍稍变通的方法。就是通过对指定数据项的图片信息进行,跟随鼠标的浮动层展示图片。
CSS:
<style type="text/css">
body{font:12px/1.8 arial;}
a,a:visited{color:#3366cc;text-decoration:none;}
a:hover{color:#f60;text-decoration:underline;}
.tip{width:200px;border:2px solid #ddd;padding:8px;background:#f1f1f1;color:#666;}
</style>
JS:
<script type="text/javascript">
var tip={$:function(ele){
if(typeof(ele)=="object")
return ele;
else if(typeof(ele)=="string"||typeof(ele)=="number")
return document.getElementById(ele.toString());
return null;
},
mousePos:function(e){
var x,y;
var e = e||window.event;
return{x:e.clientX+document.body.scrollLeft+document.documentElement.scrollLeft,y:e.clientY+document.body.scrollTop+document.documentElement.scrollTop};
},
start:function(obj){
var self = this;
var t = self.$("mjs:tip");
obj.οnmοusemοve=function(e){
var mouse = self.mousePos(e);
t.style.left = mouse.x + 10 + 'px';
t.style.top = mouse.y + 10 + 'px';
t.innerHTML = "<img src='"+obj.getAttribute("tips")+"' />";
t.style.display = '';
}
obj.οnmοuseοut=function(){
t.style.display = 'none';
}
}
}
</script>
DIV:
<div id="mjs:tip" class="tip" style="position:absolute;left:0;top:0;display:none;"></div>
应用实例:
<a href='www.163.com' οnmοuseοver="tip.start(this)" tips='<%# Eval("Pic_url")%>' >浮动层展示图片</a>