ホームページ > ウェブフロントエンド > jsチュートリアル > タブ開発の簡単な例(コード)

タブ開発の簡単な例(コード)

不言
リリース: 2018-10-16 15:41:08
転載
1691 人が閲覧しました

この記事では、タブ開発の簡単な例 (コード) を紹介します。必要な方は参考にしていただければ幸いです。
次のメソッドが使用されます
メソッド 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);
   }
   }
ログイン後にコピー

クロージャー

方法 1:

for(var i=0; i<tabList.length; i++){
     ~function (i) {
         tabList[i].onclick = function () {
             changeTabHandle(i);
         }
     }(i)
 }
ログイン後にコピー

方法 2:

 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 Chapter

##

以上がタブ開発の簡単な例(コード)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:segmentfault.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート