jquery 自制廣告輪播小插件

<!doctype html>
  <html>
  <head>
  <title> test</title>
  <meta charset="utf-8">
  <meta name="keywordscontent="">
  <meta name="descriptioncontent="">
  <script src="jquery-1.11.3.min.js"></script>
  <script src="adv_plugin.js"></script>
  <style>
  *{margin:0; padding:0;list-style:none;}
  .ctrlbtn{
  position:absolute;left:110px; bottom:15px;
   
  }
  .ctrlbtn li{
  float:left; margin:0 5px; width:22px; height:22px; cursor:pointer; line-height:22px;background:#b29f90;color:white;border-radius:50%;text-align:center
  }
  .ctrlbtn .current{
  background:#e5007e;
  }
  #adv{
  width:400px;
  height:300px;
  border:1px solid red;
  position:relative;
  }
  </style>
   
  </head>
  <body>
  <div id="adv">
  <ul class="ctrlbtn">
  <li class="current">1</li>
  <li>2</li>
  <li>3</li>
  <li>4</li>
  </ul>
  </div>
  <script>
  var imgs = ["img/1.jpg","img/2.jpg","img/3.jpg","img/4.jpg"];
  $("#adv").adv(imgs,1000);
   
  </script>
  </body>
 

</html>


//以下爲插件代碼



$.fn.adv=function(imgs,timer){
var i=0;
var selector=this.selector;//this==>>adv && selector==>>#adv
img=new Image();//創建img對象
img.src=imgs[i];//指定路徑
img.οnlοad=function(){
$(selector).append(img);//在adv中顯示圖片
}


function lunbo(){//定義輪播
i++;
if(i>=imgs.length){
i=0;
}
img.src=imgs[i];
img.οnlοad=function(){
$(selector).append(img);
}
$('.ctrlbtn li').eq(i).addClass('current').siblings().removeClass('current');


}
var t=setInterval(function(){lunbo()},timer);//循環播放;
$(function(){//手動停止定時器
$(selector).hover(function(){
clearInterval(t);
t=null;
},function(){
t=setInterval(function(){lunbo()},timer);
});


$('.ctrlbtn li').mouseover(function(){//手動看圖
clearInterval(t);
$(this).addClass('current').siblings().removeClass('current');
var i=$('.ctrlbtn li').index(this);
img.src=imgs[i];
});


})

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章