亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

jquery簡易手風(fēng)琴插件的封裝

 更新時間:2020年10月13日 15:36:16   作者:一只前端小白  
這篇文章主要為大家詳細介紹了jquery簡易手風(fēng)琴插件的封裝,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了jquery簡易手風(fēng)琴插件的封裝代碼,供大家參考,具體內(nèi)容如下

理論基礎(chǔ):

基于jquery封裝插件,首先我們要清楚封裝的代碼應(yīng)該寫在哪里?
毫無疑問,寫在原型中...
寫入原型的好處:
數(shù)據(jù)共享,節(jié)省空間
那么既然知道是寫在原型中,那怎么將封裝的代碼寫入原型呢?
首先在jq文件中找到如下代碼?
jQuery.fn = jQuery.prototype = {...}
jQuery.fn等于jq對象的原型,而在jq中,jQuery可簡寫為$
所以我們可以直接在$.fn中編寫封裝的代碼

/*手風(fēng)琴插件封裝*/
$.fn.accordion=function (ele,width) {
 //隨機顏色值
 var setBgc=function (eleObj) {
 var r,g,b;
 r=Math.floor(Math.random()*256);
 g=Math.floor(Math.random()*256);
 b=Math.floor(Math.random()*256);
 $(eleObj).css("background-color","rgb("+r+","+g+","+b+")");
 }
 if (!ele)return;
 width=width||100;
 //定義變量
 var eles=this.find(ele);
 var nowW=this.width()-(eles.length-1)*width;
 var avgW=this.width()/eles.length;
 //設(shè)置顏色
 eles.each(function (index,element) {
 setBgc(element);
 });
 //添加多個事件
 eles.on({
 "mouseenter":function () {
  $(this).stop().animate({
  width:nowW
  }).css("background-size","100% 100%").siblings().stop().animate({
  width:width
  }).css("background-size","auto");
 },
 "mouseleave":function () {
  eles.stop().animate({
  width:avgW
  }).css("background-size","auto");
 }
 });
 return this;
}

以上就是封裝的代碼,在導(dǎo)入jq文件后,我們就可以直接調(diào)用了?

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
  <style>
    * {
      margin: 0;
      padding: 0;
      list-style: none;
    }
    div {
      width: 1200px;
      height: 400px;
      /*border: 2px solid #000;*/
      margin: 100px auto;
      overflow: hidden;
    }
    ul{
      width: 1220px;
    }
    li {
      width: 240px;
      height: 400px;
      float: left;
    }
  </style>
</head>
<body>
<div id="box">
  <ul>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
  </ul>
</div>
<script src="js/jquery-1.12.4.js"></script>
<script src="jquery-accordion.js"></script>
<script>
 //調(diào)用封裝的插件
  $("#box").accordion("li").find("li").each(function (index,ele) {
    $(ele).css("background-image","url(images/"+(index+1)+".jpg)");
  });
</script>
</body>
</html>

以上就是簡易手風(fēng)琴插件的封裝和調(diào)用,最后附上最終效果圖:

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論