日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
用Jquery寫tab插件(支持點擊和移動及其他事件)

今天看了一下 Jquery權(quán)威指南這本書的插件,提到Jquery插件分為兩種 1 對象級別插件 是給Jquery添加對象方法 調(diào)用方法是 $.fn.方法名 2 類級別插件 即給Jquery添加新的全局函數(shù) 相當于給Jquery類本生添加方法,典型的是 $.AJAX(); 今天也寫了一個tab插件 支持鼠標移動和 點擊 當然目前常見的只有這兩種 當然如果有其他的事件  你可以自定義事件!我用的是對象級別寫插件的 對象級別插件 調(diào)用的方式是:$("#ID名稱"或者"類名稱").插件名稱({switchingMode:"click"}); 或者 mouseover , 我引用結(jié)構(gòu)還是以前的tab選顯卡的結(jié)構(gòu) 樣式也是一樣的!

成都創(chuàng)新互聯(lián)主要從事網(wǎng)站制作、網(wǎng)站設(shè)計、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)姑蘇,10余年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):028-86922220

下面是HTML結(jié)構(gòu)及CSS

 

  1.  
  2.  
  3.  
  4.  
  5. 無標題文檔 
  6.  
  7.  
  8. ul,li,div{ margin:0; padding:0;}    
  9. ul,li{ list-style:none;}    
  10. .tabWrap{ width:450px; margin:0 auto 50px; overflow:hidden;}    
  11. .tab{ background:#F93; overflow:hidden; width:450px;}    
  12. .tab li{ float:left; width:150px; color:#fff; text-align:center; cursor:pointer; height:22px; line-height:22px;}    
  13. .tab li.on{background:#F60;}    
  14. .tabContent .p-content{ padding:20px; border:1px solid #ddd; border-top:0 none; }    
  15. .tabContent .hide{ display:none;}  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.        
  22.            
  23.             
  24. 選項卡1
  25.    
  26.             
  27. 選項卡2
  28.    
  29.             
  30. 選項卡3
  31.    
  32.            
  33.            
  34.             1111
   
  •             222
  •    
  •             3333
  •    
  •         
  •    
  •     
  •    
  •   
  •  
  •  
  • 調(diào)用的方式 如上圖所示:

    JS

     

    1. // JavaScript Document 
    2. /**   
    3. 用法:$("#ID名稱").tabsPlug({switchingMode:"click"}); 
    4. 參數(shù)解釋:switchingMode是面板切換的模式,如switchingMode:"mouseover"則鼠標移動至選項卡切換面板,默認為click。 
    5.  
    6. 整體tabs骨架不變,依然是常用的結(jié)構(gòu)如下: 
    7.   
    8.           
    9.             
    10. 選項卡1
    11.   
    12.             
    13. 選項卡2
    14.   
    15.             
    16. 選項卡3
    17.   
    18.           
    19.           
    20.             1111
      
  •             222
  •   
  •             3333
  •   
  •         
  •   
  •     
  •   
  • 樣式:此樣式為默認無任何效果樣式,可根據(jù)需要修改插件樣式 
  • 插件分為 1 對象級別插件 2 類別插件  
  • 對象級別插件 調(diào)用的方式是:$("#ID名稱").插件名稱({switchingMode:"click"}); 或者 mouseover 
  • 類別插件 : $.定義的方法(); 
  • 下面是對象級別插件  
  • */ 
  • ;(function($){  
  •     $.fn.extend({  
  •         "tabsPlug" : function(options){  
  •             var defaults = {switchingMode : "click"}; //定義默認切換模式 為click 也可以自定義mouseover 
  •             var opts = $.extend({},defaults,options); // 將defaults 和 options 參數(shù)合并到{}  
  •             var obj = $(this);  
  •             var currentIndex = 0;  
  •             $(".tab li:first",obj).addClass("on");  
  •             /* obj對象為當前調(diào)用該插件方法的對象。而后面bind里面的clickIndex = $(".tab li", obj).index($(this));意思就是obj對象下面的ul中的li元素索引index($(this))這里的$(this)則是在li元素中找到當前l(fā)i元素的索引。 */ 
  •             $(".tab li").bind(opts.switchingMode,function(){  
  •                 if(currentIndex != $(".tab li",obj).index($(this))){  
  •                     currentIndex = $(".tab li",obj).index($(this));   
  •                     $(".tab li",obj).removeClass("on")  
  •                     $(this).addClass("on");  
  •                     $(".p-content",obj).eq(currentIndex).show().siblings().hide();  
  •                 }     
  •             });  
  •             return $(this);   
  •         }     
  •     })  
  • })(jQuery); 
  • 在頁面上這樣調(diào)用 是:$("#ID名稱").插件名稱({switchingMode:"click"}); 或者 mouseover 默認情況下 $("#ID名稱").插件名稱() 即調(diào)用點擊 當要調(diào)用鼠標移上去時候 這樣調(diào)用就可以了 $("#ID名稱").插件名稱({switchingMode:"mouseover"});  其實對象級別插件的寫法是 ;(function($){$.fn.extend({})})(jQuery)  這樣的結(jié)構(gòu) 當然還有一種寫法 是 $.fn.插件名稱!代碼里面都有注釋:下面我們來分析下這個插件代碼:

    1 ;(function($){$.fn.extend({})})(jQuery)  這樣的固定結(jié)構(gòu) 不用說啊 不明白的地方可以google下 然后定義一個函數(shù) 并且?guī)Я艘粋€參數(shù) 目地是為了自定義事件類型!

    2 var defaults = {switchingMode : "click"};這句話意思是 定義默認類型是點擊事件  $("#ID名稱").插件名稱()  這樣調(diào)用 默認情況下是點擊  如果想要其他事件  可以這樣調(diào)用 是:$("#ID名稱").插件名稱({switchingMode:"mouseover或者其他事件類型"});

    3 var opts = $.extend({},defaults,options); 這句話代碼的意思是 將defaults和options參數(shù)合并到{}這里面來 然后賦值給一個變量 同時改變了{}這里面的  結(jié)構(gòu).

    4 $(".tab li").bind(opts.switchingMode,function(){
        if(currentIndex != $(".tab li",obj).index($(this))){
         currentIndex = $(".tab li",obj).index($(this)); 
         $(".tab li",obj).removeClass("on")
         $(this).addClass("on");
         $(".p-content",obj).eq(currentIndex).show().siblings().hide();
        } 
       }); 這樣一段代碼 bind里面的clickIndex = $(".tab li", obj).index($(this));意思就是obj對象下面的ul中的li元素索引index($(this))這里的$(this)則是在li元素中找到當前l(fā)i元素的索引。接下來代碼就不用多說?。?/p>

    附件:http://down.51cto.com/data/2359396

    網(wǎng)頁標題:用Jquery寫tab插件(支持點擊和移動及其他事件)
    標題鏈接:http://www.dlmjj.cn/article/ipdepj.html

    其他資訊