Ferris教程学习笔记:js示例2.16 鼠标移过,改变图片路径
//这个案例知识点比较多..
1:first 下的div是用来显示加载图片过程时的"加载图片.."
当图片加载成功后隐藏
加载过程中显示
2:new Image()对象
动态加载图片时使用的对象,常用做预加载中
/mg 有一个属性.complete 图片加载完成 true
否则为false
onload 加载完成后自动执行方法隐藏
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2 <html xmlns="http://www.w3.org/1999/xhtml"><head> 3 <meta http-equiv="Content-Type" content="text/html; charset=gbk"> 4 <title>鼠标移过,改变图片路径</title> 5 <style type="text/css"> 6 body,ul,li{margin:0;padding:0;} 7 body{background:#000;} 8 img{border:0;border-radius:3px;} 9 ul{list-style-type:none;} 10 #box{width:212px;border;5px solid #fff;overflow:hidden;zoom:1; 11 background:#fff;border-radius:5px;margin:10px auto;padding:0 0 3px 3px;} 12 #box li,#box li img{float:left;width:50px;height:50px;} 13 #box li{margin:3px 3px 0 0;} 14 #box li.first{position:relative;} 15 #box li.first,#box li.first img{width:156px;height:156px;} 16 #box li.first div{position:absolute;top:0;left:0;width:156px; 17 height:156px;display:none;opacity:0.5;filter:alpha(opacity=50); 18 background:#fff url(img/loading.gif) 50% 50% no-repeat;} 19 </style> 20 </head> 21 <body> 22 <ul id="box"> 23 <li class="first"> 24 <img src="11/big_2.jpg" /> 25 <div style="display:none;"></div> 26 </li> 27 <li><a href="javascript:;"><img src="11/small_1.jpg"/></a></li> 28 <li><a href="javascript:;"><img src="11/small_2.jpg"/></a></li> 29 <li><a href="javascript:;"><img src="11/small_3.jpg"/></a></li> 30 <li><a href="javascript:;"><img src="11/small_4.jpg"/></a></li> 31 <li><a href="javascript:;"><img src="11/small_5.jpg"/></a></li> 32 <li><a href="javascript:;"><img src="11/small_6.jpg"/></a></li> 33 <li><a href="javascript:;"><img src="11/small_7.jpg"/></a></li> 34 <li><a href="javascript:;"><img src="11/small_8.jpg"/></a></li> 35 <li><a href="javascript:;"><img src="11/small_9.jpg"/></a></li> 36 <li><a href="javascript:;"><img src="11/small_10.jpg"/></a></li> 37 <li><a href="javascript:;"><img src="11/small_11.jpg"/></a></li> 38 </ul> 39 <script type="text/javascript"> 40 window.onload = function(){ 41 var div = document.getElementsByTagName("div")[0]; 42 var images = document.getElementById("box").getElementsByTagName("img"); 43 44 for(var i=1;i<images.length;i++){ 45 images[i].onclick = function(){ 46 47 //创建一个Image图片对象作用是预加载图片 48 var img = new Image(); 49 img.src = images[0].src = this.src.replace(/small/,"big"); 50 div.style.display = "block"; 51 img.complete ? div.style.display = "none":(images[0].onload = function(){div.style.display = "none";}) 52 }; 53 } 54 } 55 56 //---------------------------------- 57 //这个案例知识点比较多.. 58 //1:first 下的div是用来显示加载图片过程时的"加载图片.." 59 //当图片加载成功后隐藏 60 //加载过程中显示 61 //2:new Image()对象 62 //动态加载图片时使用的对象,常用做预加载中 63 //img 有一个属性.complete 图片加载完成 true 64 // 否则为false 65 //onload 加载完成后自动执行方法隐藏 66 </script> 67 </body> 68 </html>