国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

jQuery進行組件開發(fā)完整實例

2019-11-20 11:00:42
字體:
供稿:網(wǎng)友

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

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

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

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

另一個不同點則是把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="jquery.js" type="text/javascript"></script><link href="tabs.css" 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 href="#tabs1">選項1</a></li>   <li><a href="#tabs2">選項2</a></li>   <li><a href="#tabs3">選項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;    //使用鼠標移動觸發(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è)計有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 济源市| 武定县| 鄂托克旗| 平武县| 观塘区| 普宁市| 铜山县| 佛坪县| 进贤县| 新丰县| 柘城县| 得荣县| 丁青县| 嵩明县| 兴文县| 大悟县| 营口市| 睢宁县| 梧州市| 乡宁县| 黎城县| 荆门市| 韶山市| 苍南县| 朝阳区| 莱阳市| 贵阳市| 兴义市| 正蓝旗| 芜湖县| 中西区| 苗栗县| 河西区| 谢通门县| 茶陵县| 牙克石市| 荣昌县| 扎赉特旗| 呼图壁县| 南雄市| 新津县|