摘要:今天又一次掉進這個坑里面。后續對這個的所有讀寫操作,其實都是操作的這個數據緩存,而上面的并不會發生任何變化。附為了和做區分,我這里用和這種原型鏈上的方法來表示同步發表于我的博客
今天又一次掉進這個坑里面。
data-attr是HTML5里面的一個新屬性(其實這東西都好多年了),方便CSSJS去讀取DOM上面的屬性值。
jQuery在很久之前,就封裝了一個 $.fn.data() 的方法,而該方法是將數據存放在DOM內部的一個數據對象中。
在data-attr來了之后, $.fn.data() 也支持用來讀取DOM上面的data-attr,但是,它會緩存這個結果到DOM內部的數據對象,他會緩存,緩存,緩存。
后續對這個key的所有讀寫操作,其實都是操作的這個數據緩存,而DOM上面的data-attr并不會發生任何變化。
The data- attributes are pulled in the first time the data property is accessed and then are no longer accessed or mutated (all data values are then stored internally in jQuery).
如果你有一些樣式,是希望同步這個data-attr的狀態的,用 $.fn.data() 來操作就會發生一些奇怪的事情(之前一次沒細看jQuery這塊的實現,只是發現出來的效果怪怪的),建議改用 $.fn.attr() 方法或者JS原生方法。
附:
為了和 $.data() 做區分,我這里用 $.fn.attr() 和 $.fn.data() 這種jQuery原型鏈上的方法來表示 $(selector).data()
同步發表于我的博客
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/78472.html
摘要:本身項目也是使用來測試的。一個簡易的模式的配置如下的分為四個部分在實例上以開頭的行為驅動測試風格的接口,及以上版本可用。例如以開頭的兩套相同的方法庫,區別是如果斷言失敗則退出整個測試用例所有步,則打印后繼續進行。 E2E測試 E2E(end to end)測試是指端到端測試又叫功能測試,站在用戶視角,使用各種功能、各種交互,是用戶的真實使用場景的仿真。在產品高速迭代的現在,有個自動化測...
摘要:權重權重權重指的是樣式的優先級,有兩條或多條樣式作用于一個元素,權重高的那條樣式對元素起作用權重相同的,后寫的樣式會覆蓋前面寫的樣式。標簽支持格式屬性可選第三方播放器CSS權重 CSS權重指的是樣式的優先級,有兩條或多條樣式作用于一個元素,權重高的那條樣式對元素起作用,權重相同的,后寫的樣式會覆蓋前面寫的樣式。 權重的等級 可以把樣式的應用方式分為幾個等級,按照等級來計算權重 1、!impo...
摘要:眼看的源碼就快到頭了,后面還有幾個重要的內容,包括和動畫操作,加油把它們看完,百度前端學院的新一批課程也開始了。,當第二個參數為的情況,就是,為時,,從源碼來看,就是直接調用的這兩個函數。參考源碼分析樣式操作本文在上的源碼地址,歡迎來。 歡迎來我的專欄查看系列文章。 眼看 jQuery 的源碼就快到頭了,后面還有幾個重要的內容,包括 ajax 和動畫操作,加油把它們看完,百度前端學院的...
摘要:我們快速地看一下擴展原生的動畫內置的微模板國際化的支持擴展有一個叫做事件的概念。內置的微模板字符串冗長而繁瑣。比如這段與對應的微模板比較在中,任何接受的方法同樣接受表達式。 目前,jQuery是事實上的操作文檔對象模型(DOM)的庫。它可以與流行的客戶端MV*框架結合使用,并且擁有大量的插件與大型的社區。開發者對于Javascript的興趣與日俱增的同時,很多人開始好奇,原生的API是...
閱讀 3493·2021-11-23 10:13
閱讀 863·2021-09-22 16:01
閱讀 909·2021-09-09 09:33
閱讀 630·2021-08-05 09:58
閱讀 1717·2019-08-30 11:14
閱讀 1935·2019-08-30 11:02
閱讀 3265·2019-08-29 16:28
閱讀 1478·2019-08-29 16:09