电子商店——图片轮播
电子商店的图片轮播功能,有以下特点
1. 高性能
2. 美观大方
3. 兼容IE 6、IE 8+和Firefox 3+等浏览器
4. 总体积要小(除图片外)3k
5. js简单易懂(40行)
首先让我们看一下效果

高性能是我们首先需要考虑的
图片轮播的功能实现思路:客户首先看到第一张图片,这样就需要首先加载第一张图片,背后的第二张和第三张在背后隐藏,但是最后还是要用到,这样,就可以在页面完全加载成功后(window.onload),使用延迟加载图片的功能实现。

图片由二级域名提供,这样就可以并行加载图片。
View Code <script type="text/javascript"> window.onload = function () { flag = 0; obj1 = document.getElementById("slider"); obj2 = document.getElementsByTagName("li"); obj2[0].style.backgroundColor = "#666666"; time = setInterval("turn();", 7000); obj1.onmouseover = function () { clearInterval(time); } obj1.onmouseout = function () { time = setInterval("turn();", 8000); } for (var num = 0; num < obj2.length; num++) { obj2[num].onmouseover = function () { turn(this.innerHTML); clearInterval(time); } obj2[num].onmouseout = function () { time = setInterval("turn();", 8000); } } //延迟加载图片,演示的时候,使用本地图片,上线后请改为二级域名提供的图片地址 document.getElementById("second").src = "langben2.JPG"; document.getElementById("third").src = "langben3.JPG"; } function turn(value) { if (value != null) { flag = value - 2; } if (flag < obj2.length - 1) flag++; else flag = 0; obj1.style.top = flag * (-430) + "px"; for (var j = 0; j < obj2.length; j++) { obj2[j].style.backgroundColor = "#ffffff"; } obj2[flag].style.backgroundColor = "#666666"; } </script>
美观大方就需要使用CSS来优化了
CSS静态滤镜样式 filter和不透明度opacity ,将轮播的编号123设计成半透明的效果,能CSS实现的,就不要使用图片,这也符合我们高性能的原则。
1 View Code 2 3 4 5 <style type="text/css"> 6 7 #div1 8 9 { 10 11 height: 430px; 12 13 width: 960px; 14 15 overflow: hidden; 16 17 position: relative; 18 19 overflow: hidden; 20 21 } 22 23 #div1 ul 24 25 { 26 27 list-style: none; 28 29 position: absolute; 30 31 top: 380px; 32 33 left: 760px; 34 35 } 36 37 #div1 li 38 39 { 40 41 opacity: .3; 42 43 filter: alpha(opacity=30); 44 45 text-align: center; 46 47 line-height: 30px; 48 49 font-size: 20px; 50 51 height: 30px; 52 53 width: 30px; 54 55 background-color: #ffffff; 56 57 float: left; 58 59 } 60 61 #slider 62 63 { 64 65 position: absolute; 66 67 top: 0px; 68 69 left: 0px; 70 71 } 72 73 #slider img 74 75 { 76 77 float: left; 78 79 border: none; 80 81 } 82 83 </style>
<body> <div id="div1"> <div id="slider"> <a target="_blank" href="http://www.langben.com"> <img src="langben.JPG" /> </a><a target="_blank" href="http://www.langben.com"> <img id="second" /> </a><a target="_blank" href="http://www.langben.com"> <img id="third" /> </a> </div> <ul> <li>1</li> <li>2</li> <li>3</li> </ul> </div> </body>
其他的都很普通,也很简单了,完整的下载地址
请继续关注我们的电子商店的设计和开发,我会将实现的全过程记录下来,并通过博客分享给大家,当然最后也会把这个电子商店网站免费开源。
浙公网安备 33010602011771号