成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

自己動手開發jQuery插件

開發 前端
首先要了解jQuery插件開發分兩種,1.類級別的插件開發。2.對象級別插件開發。什么? 你居然問什么是類級別和什么是對象級別?

因為工作需要,所以這幾天琢磨了一下關于jQuery插件開發的問題,經過一天鏖戰,終于完成自己動手做的***個jQuery插件,對于俺這種見了css就頭痛的人來說,一天時間8小時,保守估計有5個小時在弄css(我css文盲級別,形容得還不夠貼切,如果說文盲不會寫字,只會說話,那我是連話都不會說的級別。),好了,廢話少說,切入正題。

51CTO推薦專題:jQuery從入門到精通 jQuery給力插件大閱兵

首先要了解jQuery插件開發分兩種,1.類級別的插件開發。2.對象級別插件開發。

什么? 你居然問什么是類級別和什么是對象級別?

類級別你可以理解為拓展jquery類,最簡單的$.post(...);

對象級別則可以理解為基于對象的拓展,如$("#Me").fuck(...); 這里這個fuck呢,就是基于對象的拓展了。點到即止,想深入的童鞋請花RMB買書Or網上查資料,書上比俺介紹得更清楚。so...Next...

至于您要寫一個什么東東呢?就輪到前面提到的類級別和對象級別的造型登場了,因為這寫法大千世界無奇不有,千奇百怪,各有千秋,寫法規范也不統一,俺就按俺覺得最簡便的方法寫了,Hava a Look!

  1. <script type="text/javascript">  
  2.         jQuery.msg = function () {  
  3.             alert("123");  
  4.        };           
  5.     </script>  
  6.     <script type="text/javascript">  
  7.         $(function () {  
  8.             $.msg();  
  9.         });  
  10. </script> 

類級別寫法:jQuery.插件名稱=function(){.....};

調用方法:$.插件名稱();

暴露參數這些東西,先暫時不提到。一步步來..

上面這玩意兒呢,彈出對話框插件,這么說,是先理解要緊,什么是插件,什么是類級別的插件?來看一下頁面啟動的效果,上圖上真相,你懂的..

[[41133]]

來比較一下對象級別插件寫法:Go on!

  1. (function($) {  
  2. $.fn.pluginName = function() {  
  3. // 代碼區域。  
  4. };  
  5. })(jQuery); 

對象級別寫法:$.fn.插件名稱 = function(){};多了一個fn,沒錯,是fn! fn!!! fn!!!

調用方法:$("#Me").插件名稱();

稍微說一下,$.插件名稱();是通過$訪問調用jquery中的全局函數,直接可以通過jquery或者美元$調用,從而實現一些效果。

$("#Me").插件名稱();是通過一個jquery對象所調用的一個函數,什么? 你居然發現這個寫法外面一層多了個東東? 阿? 你問怎么回事?

The First,我們必須先了解一下閉包這個玩意兒的造型(框架),Look!,這就是傳說中用來開發jQuery插件的東東

  1. function($){  
  2.     //這里是您寫東東的地方,不收地稅,工商稅,個人所得稅等..放心大膽使用。  
  3. })(jQuery); 

(function($){ //這里是您寫東東的地方,不收地稅,工商稅,個人所得稅等..放心大膽使用。})(jQuery);

這里function 后面的$參數,形參,在函數體內部的使用呢,$就是當前您當前整在調用該函數的對象了,這樣就能干很多事了....你懂的。

用一個tabs面板切換插件來詳細演示一下jQuery對象級別插件的具體開發,直接上代碼。

首先上HTML:

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
  2. <html xmlns="http://www.w3.org/1999/xhtml">  
  3. <head>  
  4.     <title></title>  
  5.     <script src="jquery-1.6.2.min.js" type="text/javascript"></script>  
  6.     <script src="jquery.tabs.js" type="text/javascript"></script>  
  7.     <link href="tabs.css" rel="stylesheet" type="text/css" />  
  8.     <script type="text/javascript">  
  9.         $(function () {  
  10.             $("#mytabs").tabs();  
  11.         });  
  12.     </script>  
  13. </head>  
  14. <body>  
  15.     <!--tabs示例-->  
  16.     <div id="mytabs">  
  17.         <!--選項卡區域-->  
  18.         <ul>  
  19.             <li><a href="#tabs1">選項1</a></li>  
  20.             <li><a href="#tabs2">選項2</a></li>  
  21.             <li><a href="#tabs3">選項3</a></li>  
  22.         </ul>  
  23.         <!--面板區域-->  
  24.         <div id="tabs1">11111</div>  
  25.         <div id="tabs2">22222</div>  
  26.         <div id="tabs3">33333</div>  
  27.     </div>  
  28. </body>  
  29. </html> 

再上插件源碼:

  1. /*  
  2. tabs面板插件,版本1.0(2011.08.24)  
  3. 用法:$("#myDiv").tabs({switchingMode:"click"});  
  4. 參數解釋:switchingMode是面板切換的模式,如switchingMode:"mouseover"則鼠標移動至選項卡切換面板,默認為click。  
  5. 整體tabs骨架不變,依然是常用的結構如下:  
  6. <div id="tabs"> 
  7.     選項卡區域ul  
  8.     <ul> 
  9.         <li><a href="#div1">選項1</a></li> 
  10.         <li><a href="#div2">選項2</a></li> 
  11.     </ul> 
  12.     面板區域div  
  13.     <div id="div1">面板1</div> 
  14.     <div id="div2">面板2</div> 
  15. </div> 
  16.  
  17. 樣式:此樣式為默認無任何效果樣式,可根據需要修改插件樣式。  
  18.  
  19. */  
  20. ; (function ($) {  
  21.     $.fn.tabs = function (options) {  
  22.         var defualts = { switchingMode: "click" };  
  23.         var opts = $.extend({}, defualts, options);  
  24.         var obj = $(this);        
  25.         var clickIndex = 0;  
  26.         obj.addClass("tabsDiv");  
  27.         $("ul li:first", obj).addClass("tabsSeletedLi");  
  28.         $("ul li", obj).not(":first").addClass("tabsUnSeletedLi");  
  29.         $("div", obj).not(":first").hide();  
  30.         $("ul li", obj).bind(opts.switchingMode, function () {  
  31.             if (clickIndex != $("ul li", obj).index($(this))) {  
  32.                 clickIndex = $("ul li", obj).index($(this));  
  33.                 $(".tabsSeletedLi", obj).removeClass("tabsSeletedLi").addClass("tabsUnSeletedLi");  
  34.                 $(this).removeClass("tabsUnSeletedLi").addClass("tabsSeletedLi");  
  35.                 var divid = $("a", $(this)).attr("href").substr(1);  
  36.                 $("div", obj).hide();  
  37.                 $("#" + divid, obj).show();  
  38.             };  
  39.         });  
  40.     };  
  41. })(jQuery); 

接下來上插件樣式:

  1. body{background-color: black;}          
  2. .tabsDiv{width: 500px;height: 350px;margin-top: 0px;margin-left: 0px;}  
  3. .tabsDiv ul{width: 500px;height: 20px;list-style: none;background-color: black;margin-bottom: 0px;margin: 0px;padding: 0px;}  
  4. .tabsDiv div{width: 500px;height: 330px;background-color: white;}  
  5. .tabsSeletedLi{width: 100px;height: 20px;background-color: white;float: left;text-align: center;}  
  6. .tabsSeletedLi a{width: 100px;height: 20px;color: black;}  
  7. .tabsUnSeletedLi{width: 100px;height: 20px;background-color: black;float: left;text-align: center;}  
  8. .tabsUnSeletedLi a{width: 100px;height: 20px;color: white;} 

最終效果圖,你懂的:

[[41134]]

[[41135]]

[[41136]]

原文:http://www.cnblogs.com/JohnStart/archive/2011/08/24/jQueryPlugin.html

【編輯推薦】

  1. 8月易用jQuery插件推薦:jqPlot畫圖插件
  2. jQuery***實踐
  3. 50個必備的實用jQuery代碼段
  4. jQuery是如何工作的
  5. jQuery設計思想
責任編輯:陳貽新 來源: John.HuJY
相關推薦

2015-09-01 09:49:28

2021-06-25 07:18:50

開發IDEA插件項目

2011-10-31 10:17:05

插件

2011-08-29 14:50:08

jQuery插件

2020-09-29 12:13:46

SQL引擎底層

2020-05-20 13:53:41

HTTP環境安裝

2012-11-22 13:02:24

jQuery插件Web

2014-06-20 09:18:54

Dustjs中間件

2009-03-16 16:30:18

2011-05-06 15:35:58

打印機打印故障

2009-10-27 09:01:54

VB.NET內存指針

2009-12-03 13:56:05

Suse Linux開xinetd

2011-08-12 10:46:57

Linux

2024-12-06 09:58:09

2018-01-19 14:27:17

人工智能機器人智能聊天

2021-04-26 07:31:22

SpringMVCweb框架

2013-11-28 09:38:04

移動開發jQuery Mobi

2022-04-18 19:02:53

chrome擴展瀏覽器

2024-03-18 18:07:38

VSCode插件文件

2014-11-10 15:12:46

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: www亚洲精品| 欧美在线一区二区三区 | 欧美日韩国产高清 | 欧美在线一区二区三区 | 黄免费观看视频 | 美女国内精品自产拍在线播放 | 免费在线观看一级毛片 | 国产精品毛片一区二区三区 | 美女久久久久久久久 | 色综合久久伊人 | 亚洲视频一区在线观看 | 国产女人与拘做视频免费 | 男女国产视频 | 久久久国产一区二区三区四区小说 | 91在线电影| a天堂在线| 91色视频在线观看 | 国产伦精品一区二区三区高清 | 一区二区精品 | 国产精品亚洲第一区在线暖暖韩国 | 91看片在线观看 | 亚洲一区二区在线视频 | 久草在线在线精品观看 | 久久噜噜噜精品国产亚洲综合 | 日韩免费一区 | www.国产一区| 精品视频国产 | 一区二区成人在线 | 天天曰夜夜操 | 欧日韩在线观看 | 国产精品久久 | 特黄色毛片 | 日韩欧美久久 | 一区二区三区亚洲精品国 | 日韩一区二区三区视频在线观看 | 中文字幕av在线播放 | 欧美成年黄网站色视频 | 午夜免费网站 | 特级做a爱片免费69 精品国产鲁一鲁一区二区张丽 | 久久精品成人 | 成年女人免费v片 |