jQuery中使用data()方法讀取HTML5自定義屬性data-*實例
主要的方法如下:
.data( key, value )
.data( obj )
.data( key )
.data()
從jQuery 1.4.3起, HTML 5 data- 屬性 將自動被引用到jQuery的數(shù)據(jù)對象中。
例如HTML:
下面的 jQuery代碼都是返回 true 的:
$ ( "div" ) . data ( "role" ) === "page" ;
$ ( "div" ) . data ( "lastValue" ) === 43 ;
$ ( "div" ) . data ( "hidden" ) === true ;
$ ( "div" ) . data ( "options" ) . name === "John" ;
和html5的api不同的是,jQuery會嘗試將字符串轉換為一個JavaScript值(包括布爾值(booleans),數(shù)字(numbers),對象(objects),數(shù)組(arrays)和空(null))。如果這樣做不會改變數(shù)值的表示,那么該值將轉換為一個數(shù)字(number)。例如,“1E02”和“100.000”是等同于數(shù)字(數(shù)字值100),但將轉換它們會改變他們的表示,所以他們被保留為字符串。字符串值“100”被轉換為數(shù)字100。
如果數(shù)據(jù)(data)屬性是一個對象(以“{”開始)或數(shù)組(以'[‘開始),可以用jQuery.parseJSON 將其解析成字符串;它必須遵循 有效的JSON的語法 ,包括帶雙引號的屬性名稱。如果該值不能解析為一個JavaScript值,它將被保留為字符串。
如果想將取出的屬性值直接當作字符串的話,請使用 attr() 方法。
data-屬性是在第一次使用這個數(shù)據(jù)屬性后不再存取或改變(所有的數(shù)據(jù)值都在jQuery內(nèi)部存儲)。
調(diào)用 .data() 時如果不帶參數(shù),將會以 JavaScript 對象的形式獲取所有數(shù)據(jù)。這個對象可以安全的存放在變量中,因為一旦這個新對象被提取出來,之后對元素進行的 .data(obj) 操作,將不會再影響這個對象。另外,直接操作這個對象會比每次調(diào)用 .data() 來設置或獲取值要快一些。
相關文章
jquery 操作日期、星期、元素的追加的實現(xiàn)代碼
主要實現(xiàn)日期的顯示,獲取年月日,時分秒、星期、判斷閏年,學習jquery的朋友可以參考下2012-02-02使用jquery.validate自定義方法實現(xiàn)"手機號碼或者固話至少填寫一個"的邏輯驗證
這篇文章主要介紹了使用jquery.validate自定義方法實現(xiàn)"手機號碼或者固定電話"的邏輯驗證,解決了手機號碼或者固定電話字至少填寫一個的驗證問題,分享給大家2014-09-09asp.net+jquery.form實現(xiàn)圖片異步上傳的方法(附jquery.form.js下載)
這篇文章主要介紹了asp.net+jquery.form實現(xiàn)圖片異步上傳的方法,結合實例形式分析了jquery.form.js前臺異步提交圖片與asp.net后臺處理的相關技巧,需要的朋友可以參考下2016-05-05jQuery插件echarts實現(xiàn)的去掉X軸、Y軸和網(wǎng)格線效果示例【附demo源碼下載】
這篇文章主要介紹了jQuery插件echarts實現(xiàn)的去掉X軸、Y軸和網(wǎng)格線效果,結合實例形式分析了echarts插件繪制表格圖及圖形相關屬性設置操作技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2017-03-03使用jQuery不判斷瀏覽器高度解決iframe自適應高度問題
這篇文章主要介紹了使用jQuery不判斷瀏覽器高度解決iframe自適應高度問題,需要的朋友可以參考下2014-12-12