日期:2014-05-17 浏览次数:20623 次
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Insert title here</title> <script type="text/javascript"> function mouseOverHandler(evt) { var thumb = document.getElementById("thumb"); var thumbWidth = thumb.clientWidth; var thumbHeight = thumb.clientHeight; //var abc = getStyle(thumb, "width"); //thumb.style.left = evt.clientX + "px"; //thumb.style.top = evt.clientY + "px"; thumb.style.clip = buildClip(evt.clientX ? evt.clientX : evt.x, evt.clientY ? evt.clientY : evt.y, thumbWidth, thumbHeight); } function getStyle(elem, name) { //如果该属性存在于style[]中,则它最近被设置过(且就是当前的) if (elem.style[name]) { return elem.style[name]; } //否则,尝试IE的方式 else if (elem.currentStyle) { return elem.currentStyle[name]; } //或者W3C的方法,如果存在的话 else if (document.defaultView && document.defaultView.getComputedStyle) { //它使用传统的"text-Align"风格的规则书写方式,而不是"textAlign" name = name.replace(/([A-Z])/g, "-$1"); name = name.toLowerCase(); //获取style对象并取得属性的值(如果存在的话) var s = document.defaultView.getComputedStyle(elem, ""); return s && s.getPropertyValue(name); //否则,就是在使用其它的浏览器 } else { return null; } } var clipWidth = 400; var clipHeight = 400; function buildClip(x, y, width, height) { var rect = "rect(" + (y - clipHeight / 2 + "px,") + ((x + clipWidth - clipWidth / 2) + "px,") + ((y + clipHeight - clipHeight / 2) + "px,") + (x - clipWidth / 2 + "px") + ")"; return rect; } </script> <style type="text/css"> * { margin: 0px; padding: 0px; } img { } #thumb { position: absolute; background: url('Hydrangeas.jpg') no-repeat; clip: rect(0px, 400px, 400px, 0px); } #main { width: 1200px; height: 800px; position: absolute; background: url('Hydrangeas.jpg') no-repeat; /* Firefox, Safari(WebKit), Opera */ filter: alpha(opacity = 20); background: url('Hydrangeas.jpg') no-repeat; opacity: 0.2; /* Firefox, Safari(WebKit), Opera */ filter: alpha(opacity = 20); background: url('Hydrangeas.jpg') no-repeat; opacity: 0.2; /* Firefox, Safari(WebKit), Opera */ filter: alpha(opacity = 50); /* IE 4-7 */ } </style> </head> <body> <div id="main" onmousemove="mouseOverHandler(event);"></div> <div id="thumb" onmousemove="mouseOverHandler(event);"><img src="Hydrangeas.jpg" /></div> </body> </html>