HTML 5 的自定義 data-* 屬性和jquery的data()方法的使用

?

      HTML 5 的自定義 data-* 屬性和jquery的data()方法的使用

人們總喜歡往HTML標簽上添加自定義屬性來存儲和操作數據。但這樣做的問題是,你不知道將來會不會有其它腳本把你的自定義屬性給重置掉,此外,你這樣做也會導致html語法上不符合Html規范,以及一些其它副作用。這就是為什么在HTML5規范里增加了一個自定義data屬性,你可以拿它做很多有用的事情。

你可以去讀一下HTML5的詳細規范,但這個自定義data屬性的用法非常的簡單,就是你可以往HTML標簽上添加任意以?"data-"開頭的屬性,這些屬性頁面上是不顯示的,它不會影響到你的頁面布局和風格,但它卻是可讀可寫的。

下面的一個代碼片段是一個有效的HTML5標記:

  <div id="awesome"data-myid="3e4ae6c4e">Some awesome data</div>

可是,怎么來讀取這些數據呢?你當然可以遍歷頁面元素來讀取你想要的屬性,但jquery已經內置了方法來操作這些屬性。使用jQuery的.data()方法來訪問這些"data-*"?屬性。其中一個方法就是?.data(obj),這個方法是在?jQuery1.4.3版本后出現的,它能返回相應的data屬性。

舉個例子,你可以用下面的寫法讀取?data-myid屬性值:

 var myid= jQuery("#awesome").data('myid');
console.log(myid);

你還可以在"data-*"?屬性里使用json語法,例如,如果你寫出下面的html:

<div id="awesome-json" data-awesome='{"game":"on"}'></div>

你可以通過js直接訪問這個數據,通過json的key值,你能得到相應的value:

var gameStatus= jQuery("#awesome-json").data('awesome').game;
console.log(gameStatus);

你也可以通過.data(key,value)方法直接給"data-*"?屬性賦值。一個重要的你要注意的事情是,這些"data-*"?屬性應該和它所在的元素有一定的關聯,不要把它當成存放任意東西的存儲工具。

譯者補充:盡管"data-*"?是HTML5才出現的屬性,但jquery是通用的,所以,在非HTML5的頁面或瀏覽器里,你仍然可以使用.data(obj)方法來操作"data-*"?數據。

轉載于:https://www.cnblogs.com/juancreate2014/p/3529098.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/260886.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/260886.shtml
英文地址,請注明出處:http://en.pswp.cn/news/260886.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

java。接口和抽象類區別

接口和抽象類區別 a.抽象類里可以有非抽象方法 接口里只能有抽象方法 b.接口是抽象類的變體&#xff0c;再接口中所有方法都是抽象的轉載于:https://www.cnblogs.com/zhaozhaozhang/p/5759714.html

MNIST 手寫數字識別,我是如何做到886個可訓練參數,識別率達到98.2%? (參數、模型壓縮), Keras實現,模型優化

一 項目展示 下面可以看到驗證集可以到了0.9823了&#xff0c;實際上&#xff0c;在下面的另外一個訓練&#xff0c;可以得到0.9839&#xff0c;我保守的寫了0.982 二 項目參數展示 我們先來看看LeNet 5 的結構與參數&#xff0c;參數有61&#xff0c;706個。 這個是我用…

javascript 計算兩個坐標的距離 米_土方全面應用計算

各種土方量的計算方法匯總8.2.1 DTM法土方計算由DTM模型來計算土方量是根據實地測定的地面點坐標(X&#xff0c;Y&#xff0c;Z)和設計高程&#xff0c;通過生成三角網來計算每一個三棱錐的填挖方量&#xff0c;最后累計得到指定范圍內填方和挖方的土方量&#xff0c;并繪出填…

VS2008 AJAX控件介紹

1 Accordion 2 AccordionPane 實現多面板&#xff0c;每次都只顯示一個&#xff0c;其他收藏起來&#xff0c;可以設置顯示隱藏的時間和漸變效果哦 3 AlwaysVisibleControlExtender 這個東西是將VerticalSide的值設置好后無論頁面的滾動條滾動&#xff0c;這個目標控件一直都顯…

py文件轉exe時包含paramiko模塊出錯解決方法

問題描述&#xff1a;python代碼中包含paramiko模塊的遠程登錄ssh&#xff0c;在用pyInstaller轉為exe時報錯&#xff0c; 報錯提示為“No handlers could be found for logger "paramiko.transport" 出錯位置&#xff1a; ssh paramiko.SSHClient() ssh.set_missin…

unity 陽光插件_網絡廣告,陽光創信保駕護航

網絡廣告 就找陽光創信。網絡營銷的技術基礎主要是以計算機網絡技術為代表的信息技術。計算機網絡是現代通信技術與計算機技術相結合的產物&#xff0c;它把分布在不同地理區域的計算機與專門的外部設備用通信線路互連成一個規模大、功能強的網絡&#xff0c;從而使眾多的計算機…

第2章 Python 數字圖像處理(DIP) --數字圖像基礎1 - 視覺感知要素 - 亮度適應與辨別

數字圖像基礎1視覺感知要素亮度適應與辨別import sys import numpy as np import cv2 import matplotlib import matplotlib.pyplot as plt import PIL from PIL import Imageprint(f"Python version: {sys.version}") print(f"Numpy version: {np.__version__…

快速冪與快速乘法

List 快速冪與快速乘法 ListKnowledge快速冪 原理code快速乘法 原理codeKnowledge 快速冪 原理 a^b%p 采用二進制得思想&#xff0c;將b轉化為二進制數。 b c02^0c12^1c22^2c32^3……cn2^n a^b a^(a12^0)a^(c12^1)……a^(cn2^n) 所以我們可以在log(b)的時間內求出a^(2^0)…

Java程序設計 圖形用戶界面 小巫版簡易計算器

/** 作者&#xff1a;wwj 時間&#xff1a;2012/4/13 功能&#xff1a;實現一個計算器應用程序實驗要求&#xff1a;編寫一個模擬計算器的應用程序&#xff0c;使用面板和網格布局&#xff0c; 添加一個文本框&#xff0c;10個數字按鈕&#xff08;0~9&#xff09;&#xff0c;…

phpcms文件結構

主要目錄部分 /admin 管理后臺目錄 -- /skin/ 后臺樣式 -- /templates/ 后臺樣式模板/api api接口 /corpandresize 在線圖片處理 -- /css/ csss樣式 -- /images/ 圖片 -- /js/ 引用js文件 -- /tmp/ 臨時文件/data 數據緩存…

第1章 Python 數字圖像處理(DIP) --緒論

Python 數字圖像處理 關于本專欄 此專欄為 Python 數字圖像處理&#xff08;DIP&#xff09;&#xff08;岡薩雷斯版&#xff09;&#xff0c;專欄里文章的內容都是來自書里&#xff0c;全部手打&#xff0c;非OCR&#xff0c;因為很多公式&#xff0c;都是用LaTex輸入&#xf…

phython在file同時寫入兩個_輕松支撐百萬級數據點寫入 京東智聯云時序數據庫HoraeDB架構解密...

本文將通過對時序數據的基本概念、應用場景以及京東智聯云時序數據庫HoraeDB的介紹&#xff0c;為大家揭秘HoraeDB的核心技術架構和解決方案。首先我們來了解下時序數據庫的基本概念。時序數據庫全稱時間序列數據庫&#xff0c;主要用于處理帶時間標簽的數據&#xff0c;帶時間…

飛雪迎春

轉載于:https://www.cnblogs.com/ysx4221/p/3537810.html

高可用集群技術之corosync應用詳解(一)

Corosync概述:Corosync是集群管理套件的一部分&#xff0c;它在傳遞信息的時候可以通過一個簡單的配置文件來定義信息傳遞的方式和協議等。它是一個新興的軟件&#xff0c;2008年推出&#xff0c;但其實它并不是一個真正意義上的新軟件&#xff0c;在2002年的時候有一個項目Ope…

一天總結

這幾天忙著弄畢業設計和論文&#xff0c;有好幾天都沒總結了&#xff01;學習進度也慢了下來&#xff01;接下幾天把畢業答辯弄好后&#xff01;把精力放在數據庫和編程熟練度上&#xff01;還有很多要學習的多看書多敲代碼&#xff01;最重要的是要多思考&#xff0c;要有自己…

電腦dns_win10系統dns錯誤如何解決「系統天地」

最近有位win10系統用戶在使用電腦的過程當中&#xff0c;碰到了dns錯誤的情況&#xff0c;用戶不知道如何解決&#xff0c;為此非常苦惱&#xff0c;那么win10系統dns錯誤如何解決呢?下面為大家分享win10電腦dns錯誤的解決方法。第一步&#xff1a;使用 ipconfig /flushdns 命…

第2章 Python 數字圖像處理(DIP) --數字圖像基礎5 -- 算術運算、集合、幾何變換、傅里葉變換等

目錄數字圖像處理所有的基本數字工具介紹算術運算集合運算和邏輯運算空間運算向量與矩陣運算圖像變換圖像和隨機變量數字圖像處理所有的基本數字工具介紹 算術運算 # 相加 img_ori cv2.imread("DIP_Figures/DIP3E_Original_Images_CH02/Fig0226(galaxy_pair_original).…

單例模式之文件緩存器

2012年4月18日 天氣陰 天氣灰蒙蒙的&#xff0c;對于我們這種要為畢業做準備的人來說&#xff0c;這天氣舒服&#xff0c;涼爽 中午睡了一個時后 打開電腦 突然感覺 眼睛不適應電腦屏幕的亮度&#xff0c;就是最近眼睛看電腦太久了 不工作 了 呵呵 看來該休息一下…

linux目錄詳解

轉自 http://www.cnblogs.com/Daniel-G/archive/2012/10/06/2712932.html詳解Linux目錄&#xff08;目錄樹詳細解釋&#xff09;給大家一篇關于Linux目錄 方面的詳細說明&#xff0c;好好讀一下&#xff01;Linux目錄詳解(RHEL5.4)linux有四種基本文件系統類型&#xff1a;--普…

Windows安裝cnpm報錯 The operation was rejected by your operating system.

Windows在安裝cnpm時出現如下錯誤 npm ERR! The operation was rejected by your operating system. npm ERR! Its possible that the file was already in use (by a text editor or antivirus), npm ERR! or that you lack permissions to access it. npm ERR! npm ERR! If y…