首頁 > web前端 > js教程 > tab開發的一個簡單實例(程式碼)

tab開發的一個簡單實例(程式碼)

不言
發布: 2018-10-16 15:41:08
轉載
1693 人瀏覽過

這篇文章帶給大家的內容是關於tab開發的一個簡單實例(程式碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。
使用了以下方法
方法1-3中使用的changeTabHandle函數

//当前点击按钮的索引
function changeTabHandle(n) {
    for(var i=0; i<tabList.length; i++){
        tabList[i].className = &#39;&#39;;
        pList[i].className = &#39;&#39;;
    }
    tabList[n].className = &#39;active&#39;;
    pList[n].className = &#39;active&#39;; 
}
登入後複製

自訂屬性名稱

   //方法一:自定义属性方法
   console.log(tabList);
   for (var i = 0;i < tabList.length; i++){
   tabList[i]._f_index = i;
   tabList[i].onclick = function () {
       console.dir(this);
       changeTabHandle(this._f_index);
   } 
   }
登入後複製

es6 let

#
   //方法二:var --> let
   for(let i=0; i<tabList.length; i++){
   tabList[i].onclick = function() {
       changeTabHandle(i);
   }
   }
登入後複製

閉包

方法一:

for(var i=0; i<tabList.length; i++){
     ~function (i) {
         tabList[i].onclick = function () {
             changeTabHandle(i);
         }
     }(i)
 }
登入後複製

方法二:

 for(var i=0; i<tabList.length; i++){
     tabList[i].onclick = function (i) {
         return function() {
             changeTabHandle(i);
         }
     }(i)
 }
登入後複製

記憶上次是那個被選取而不是全部清空自訂屬性

beforeIndex = 0;
for(var i=0; i<tabList.length; i++){
tabList[i]._f_index = i;
tabList[i].onclick = function() {
    
    tabList[beforeIndex].className = '';
    pList[beforeIndex].className = '';
    tabList[this._f_index].className = 'active';
    pList[this._f_index].className = 'active';
    beforeIndex = this._f_index;
}
}
登入後複製

記憶上次是那個被選取而不是全部清空let

for(let i=0; i<tabList.length; i++){
    tabList[i].onclick = function (params) {
        tabList[beforeIndex].className = '';
        pList[beforeIndex].className = '';
        tabList[i].className = 'active';
        pList[i].className = 'active';
        beforeIndex = i;
    }
}
登入後複製

github 實例程式碼 https://github.com/fung-yu/js... 中的tab篇

以上是tab開發的一個簡單實例(程式碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:segmentfault.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板