今天在網上找圖片輪播插件,發現大多功能豐富又跨瀏覽器。自己也利用jQuery實現了一個。
1.實現的功能:
- 利用jQuery,也是跨平臺了嘛
- div自適應圖片,圖片不失真
- 循環播放
- 動態加載圖片
- 只是沒有實現動態交互。
2.代碼實現
2.1 HTML部分
<pre name="code" class="html"><pre name="code" class="html"><div class="banner"> <span class="pic-close" title="關閉"> <img src="images/pic-close.png"/> </span> </div>
2.2 CSS控制
.banner {
position: absolute;
border:solid 5px #fff;
top:20%;
left:20%;
padding:0;
background-color:black;
height:auto !important;
}
.pic-close{
position:absolute;
width:20px;
height:20px;
top:-15px;
right:-15px;
border:solid 2px #fff;
-moz-border-radius:12px;
-webkit-border-radius:12px;
border-radius:12px;
background-color:#fff;
cursor:pointer;
}
.pic-close img{
width:100%;
height:100%;
}
.banner li{
list-style: none;
}
2.3 jQuery部分
for(var i=0; i<photo_count;i++){
var setphoto="<li style='display:none'><img src='./photos/"+photo_path+"/"+i+".jpg'></li>";//動態添加圖片,例如1.jpg,2.jpg,3.jpg等等
$(setphoto)
.appendTo(".banner");
}
var $li=$(".banner li:first").show();//選擇第一張圖片進行展示
var time=setInterval(function(){
$li.hide(); //該圖片隱藏
$li=$li.next("li"); //移動到下一張圖片
if($li.length==0) //若是到最後一張,則定位到第一張
$li=$(".banner li:first").show();
else
$li.show(); //展示
},2000); //每隔2秒換一張
$(".pic-close").click(function(){
clearInterval(time); //刪除定時器
$(".banner li").remove();//清空播放列表
$(".banner").hide();//隱藏播放面板
});