Jquery中 attr 和 data 的區別

2021-09-01 23:06:29 字數 819 閱讀 9427

$.attr()和$.data()本質上屬於dom屬性jquery物件屬性的區別。

乙個簡單的例子

console.log('getattr1: ' + getattr1); //hello

console.log('getdata1: ' + getdata1); //hello

console.log('getattr2: ' + getattr2); //world

console.log('getdata2: ' + getdata2); //*** hello ***

console.log('getattr3: ' + getattr3); //world

console.log('getdata3: ' + getdata3); //*** muzidigbig ***

$.data()是從jquery物件中取值,由於物件屬性值儲存在記憶體中,因此可能和檢視裡的屬性值不一致的情況。

結合上面**和解釋,大家應該能夠理解兩者的區別。

所以$.attr()和$.data()應避免混合用,也就是應該盡量避免如下兩種情況的出現:

通過$.attr()來進行set屬性,然後通過$.data()進行get屬性值;

通過$.data()來進行set屬性,然後通過$.attr()進行get屬性值。

同時從效能的角度來說,建議使用$.data()來進行set和get操作,因為它僅僅修改的jquey物件的屬性值,不會引起額外的dom操作。

jQuery中prop 和 attr 區別

prop 方法是在jquery1.6中新新增的。我們知道 attr checked 獲取checkbox的checked屬性時選中的時候可以取到值,值為 checked 但沒選中獲取值就是undefined。而現在使用prop方法獲取屬性則統一返回true和false。那麼具體的用法是什麼,以下是個...

jquery中attr 方法介紹和用法

在js中設定節點的屬性與屬性值用到setattribute 獲得節點的屬性與屬性值用到getattribute 而在jquery中,用乙個attr 就可以全部搞定了,贊乙個先 jquery中用attr 方法來獲取和設定元素屬性,attr是attribute 屬性 的縮寫,在jquery dom操作中...

jQuery中prop方法和attr方法的區別

舊版本的jqury用attr方法來設定或者獲取元素的屬性,但是存在bug,所以新版本在此基礎上推出了prop方法,現在推薦使用prop這個方法來幹這個事情。jquery在1.6以上的版本新增了乙個prop方法,這個方法和attr的作用很像,但各司其責。以上的版本用 selector prop che...