成人精品一区二区三区中文字幕-成人精品一区二区三区-成人精品一级毛片-成人精品亚洲-日本在线视频一区二区-日本在线视频免费

導(dǎo)航首頁 ? 技術(shù)教程 ? jQuery進(jìn)行組件開發(fā)完整實例
全站頭部文字 我要出現(xiàn)在這里
jQuery進(jìn)行組件開發(fā)完整實例 626 2024-03-16   

本文實例講述了jQuery進(jìn)行組件開發(fā)的方法,分享給大家供大家參考,具體如下:

前面的《JavaScript組件開發(fā)》分析了JavaScript進(jìn)行組件開發(fā)的技巧,這里分析使用jQuery進(jìn)行組件開發(fā)的方法。

使用jQuery進(jìn)行組件開發(fā)和使用純JavaScript腳本(不使用框架)原理基本類似,特別是公共方法的組織是一樣的。

不同點是,jQuery使用了插件機(jī)制,通過$()直接進(jìn)行操作對象(DOM元素)綁定,然后對DOM元素或HTML代碼進(jìn)行綁定事件等的操作。

另一個不同點則是把jQuery當(dāng)做工具來使用,用來創(chuàng)建DOM對象,快速查找指定DOM對象等。

例子測試通過。

初級簡單示例,只實現(xiàn)了增加頁和選擇頁功能。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> Design JS component with jQuery </title>
<script src="http://www.gimoo.net/t/1904/jquery.js" type="text/javascript"></script>
<link  rel="stylesheet" type="text/css" />
 <style>
.tabsDiv{width: 500px;height: 350px;margin-top: 0px;margin-left: 0px;}
.tabsDiv ul{
  width: 500px;height: 20px;
  list-style: none;
  margin-bottom: 0px;margin: 0px;
  padding: 0px;
  border-left:solid 1px #ffffff;border-right:solid 1px #ffffff;border-top:solid 1px #ffffff;border-bottom:solid 1px #e0e0e0;
}
.tabsDiv div{
  width: 500px;height: 330px;
  background-color: #ffffff; 
  border:solid 1px #e0e0e0;
}
.tabsSeletedLi{
  width: 100px;height: 20px;
  background-color: white;
  float: left;
  text-align: center;
  border-left:solid 1px #e0e0e0;border-right:solid 1px #e0e0e0;border-top:solid 1px #e0e0e0;border-bottom:solid 1px #ffffff;
}
.tabsSeletedLi a{
  width: 100px;
  height: 20px;
  color:#000000;
  text-decoration:none;
}
.tabsUnSeletedLi{
  width: 100px;height: 20px;
  background-color: #e0e0e0; 
  float: left;
  text-align: center;
  border:solid 1px #e0e0e0;
}
.tabsUnSeletedLi a{
  width: 100px;height: 20px;
  color: #ffffff;
  text-decoration:none;
}
 </style> 
</head>
<body>
<
  <div style="width:400px;height:100px;border:solid 1px #e0e0e0;">
  </div>
-->
 <tabs示例-->
 <div id="mytabs">
  <選項卡區(qū)域-->
  <ul>
   <li><a >選項1</a></li>
   <li><a >選項2</a></li>
   <li><a >選項3</a></li>
  </ul>
  <面板區(qū)域-->
  <div id="tabs1">11111</div>
  <div id="tabs2">22222</div>
  <div id="tabs3">33333</div>
 </div>
<script lang="javascript">
(function ($) {
 $.fn.tabs = function (options) {
   var me = this;
    //使用鼠標(biāo)移動觸發(fā),亦可通過click方式觸發(fā)頁面切換
  var defualts = { switchingMode: "mousemove" };
    //融合配置項
  var opts = $.extend({}, defualts, options);
    //DOM容器對象,類似MX框架中的$e
  var $e = $(this);
  //選中的TAB頁索引
  var selectedIndex = 0;
  //TAB列表
  var $lis;
    //PAGE容器
    var aPages = [];
    //初始化方法
    me.init = function(){
      //給容器設(shè)置樣式類
    $e.addClass("tabsDiv");   
    $lis = $("ul li", $e);
    //設(shè)置TAB頭的選中和非選中樣式
    $lis.each(function(i, dom){
      if(i==0){
        $(this).addClass("tabsSeletedLi")
      }else{
        $(this).addClass("tabsUnSeletedLi");
      }
    });
      //$("ul li:first", $e).addClass("tabsSeletedLi");
    //$("ul li", $e).not(":first").addClass("tabsUnSeletedLi");
      //$("div", $e).not(":first").hide();
      //TAB pages綁定
      var $pages = $('div', $e);
      $pages.each(function(i, dom){
        if(i == 0){
          $(this).show();
        }else{
          $(this).hide();
        }
        aPages.push($(this));    
      });
      //綁定事件
    $lis.bind(opts.switchingMode, function() {
      var idx = $lis.index($(this))
     me.selectPage(idx);
    });    
    }
    /**
     * 選中TAB頁
     *
     */
    me.selectPage = function(idx){
      if (selectedIndex != idx) {      
    $lis.eq(selectedIndex).removeClass("tabsSeletedLi").addClass("tabsUnSeletedLi");
    $lis.eq(idx).removeClass("tabsUnSeletedLi").addClass("tabsSeletedLi");
    aPages[selectedIndex].hide();
     aPages[idx].show();
    selectedIndex = idx;
   };
    }
  me.showMsg = function(){
    alert('WAHAHA!');
  }
    //自動執(zhí)行初始化函數(shù)
    me.init();
    //返回函數(shù)對象
    return this;
 };
})(jQuery);
</script> 
<script type="text/javascript">
/*
 $(function () {
  $("#mytabs").tabs;
 });
*/
  var tab1 = $("#mytabs").tabs();
  tab1.showMsg();
</script> 
</body>
</html>

最終效果如圖所示:

查看圖片

希望本文所述對大家jQuery程序設(shè)計有所幫助。



主站蜘蛛池模板: 荒笛子简谱| 复仇女王 电视剧| 五亿探长雷洛传| 女生裸体.| 2024年血糖标准| 户田惠子| 搬山道人| 地下车库设计规范| 嫩模被xxxx视频在线观看| 欧美video丝袜连裤袜| 结婚四年未见面,军官老公回来了| 湖南卫视节目表今天| 消防知识问答100题| 爱奈| 婚外情第一季| 无耻之徒阿曼达| 押韵表实用大全| 色·戒未删减版| 彭丹露点| 哈尔的移动城堡免费完整版| 媚狐传| https://www.douyin.com| 我的孩子我的家三观尽毁| 范瑞君| 黄视频免费在线播放| 幸福花园在线观看| 生死瞬间演员表| 少爷和我| 纵情四海| 北京卫视手机直播| 金鸳鸯| 妻子的秘密在线| 男生魔鬼训练压腿| 孙颖莎结婚视频| 七十二小时| 回魂夜 电影| 少妇灌肠调教日本视频| 香港艳情电影| 新红楼梦惊艳版| av电影网| 短剧《职场里的秘密》|

!!!站長長期在線接!!!

網(wǎng)站、小程序:定制開發(fā)/二次開發(fā)/仿制開發(fā)等

各種疑難雜癥解決/定制接口/定制采集等

站長微信:lxwl520520

站長QQ:1737366103