jQuery的data() 和 h5 的 dataset()


作用:獲取自定義屬性

命名規則:駝峰命名法  data-user==>user data-user-name==>userName

區別:jQuery:操作內存   h5: 操作DOM

jQuery修改自定義屬性后,在DOM看不到改變,而h5可以

    

 

       

 

 

用法:

 

使用場景:Tab切換(通過自定義屬性與內容相關聯,內容可以打亂順序)

 1 <body>
 2 <ul class="nav">
 3     <!--在渲染的時候  大小的屬性會轉換成小寫 -->
 4     <li data-content-id="content01">菜單1</li>
 5     <li data-content-id="content02" class="active">菜單2</li>
 6     <li data-content-id="content03">菜單3</li>
 7     <li data-content-id="content04">菜單4</li>
 8 </ul>
 9 <ul class="box">
10     <li id="content01">內容1</li>
11     <li id="content03">內容3</li>
12     <li id="content04">內容4</li>
13     <li id="content02" class="show">內容2</li>
14 </ul>
15 <!-- css序號選擇器偽類選擇器  E:first-child-->
16 <!-- 查找順序:
17 通過E確定父元素
18 通過父元素找到所有的子元素
19 再去找第一個子元素
20 找到第一個子元素之后再去匹配類型是不是E  不是:無效選擇器
21 ul:last-child
22 -->
23 <script>
43     /*tab切換*/
44     window.onload = function () {
45         document.querySelector('.nav').onclick = function (e) {
46             var currentLi = e.target;
47             /*已經選中 停止操作*/
48             if(currentLi.classList.contains('active')) return false;
49 
50             var oldLi = document.querySelector('.nav li.active');
51             /*1.更改樣式*/
52             oldLi.classList.remove('active');
53             currentLi.classList.add('active');
54             /*2.根據選中的頁簽去顯示對應的內容*/
55             /*隱藏之前的*/
56             var oldContent = document.querySelector('#'+oldLi.dataset.contentId);
57             oldContent.classList.remove('show');
58             /*顯示當前的*/
59             var currentContent = document.querySelector('#'+currentLi.dataset.contentId);
60             currentContent.classList.add('show');
61         }
62     }
63 </script>
64 </body>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM