Home Web Front-end H5 Tutorial Detailed explanation of H5's custom attributes data-*

Detailed explanation of H5's custom attributes data-*

May 24, 2017 am 11:41 AM
data html5 Custom properties

HTML5 adds a new feature called custom data attributes, which are data-* custom attributes. In HTML5, we can use data- as the prefix to set the custom attributes we need to store some data

Of course, advanced browsers can define and access data through scripts. Very useful in project practice.

For example:

The code is as follows:


Use the attribute method to access data-* the value of a custom attribute

It is very convenient to use the attributes method to access the value of data-* custom attributes:

The code is as follows:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

// 使用getAttribute获取 data- 属性

 

  var user =

document

 . getElementById ( 'user' ) ;

 

  var userName = plant . getAttribute ( 'data-uname' ) ; // userName = '脚本之家'

 

  var userId = plant . getAttribute ( 'data-uid' ) ; // userId = '12345'

 

  // 使用

set

Attribute设置 data- 属性

 

  user . setAttribute ( 'data-site' , 'http://www.jb51.net' ) ;

Copy after login


This method can work normally in all modern browsers, but it is not the purpose of HTML 5's custom data-* attributes, otherwise it will be no different from the custom attributes we used before, for example:

The code is as follows:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

<p id = "user" uid = "12345" uname = "脚本之家" > </p>

 

 <script>

 

 // 使用getAttribute获取 data- 属性

 

 var user = document . getElementById ( &#39;user&#39; ) ;

 

 var userName = plant . getAttribute ( &#39;uname&#39; ) ; // userName = &#39;脚本之家&#39;

 

 var userId = plant . getAttribute ( &#39;uid&#39; ) ; // userId = &#39;12345&#39;

 

 // 使用setAttribute设置 data- 属性

 

 user . setAttribute ( &#39;site&#39; , &#39;http://www.jb51.net&#39; ) ;

 

 </script>

Copy after login


This "original" custom attribute is no different from the data-* custom attribute above, but the knowledge attribute name is different.

dataset attribute accesses the value of data-* custom attribute

This method accesses the data-* custom attribute by accessing the dataset attribute of an element. value. This dataset attribute is part of HTML5 JavaScript API and is used to return a DOMStringMap## of the data- attribute of all selected elements. #Object.

When using this method, instead of using the complete attribute name, such as data-uid, to access data, the data- prefix should be removed.

Another special note is: If the data- attribute name contains hyphens, for example: data-

date-of-birth, the hyphens will be removed and converted to camel case Formula naming, the previous attribute name should be: dateOfBirth after conversion.

The code is as follows:

1

2

3

4

5

6

7

8

9

10

11

12

13

<p id="user" data-id="1234567890" data-name="脚本之家" data-date-of-birth>码头</p>

 <script type="text/javascript">

 var el = document.querySelector(&#39;#user&#39;);

 console.log(el.id); // &#39;user&#39;

 console.log(el.dataset);//一个DOMStringMap

 console.log(el.dataset.id); // &#39;1234567890&#39;

 console.log(el.dataset.name); // &#39;脚本之家&#39;

 console.log(el.dataset.dateOfBirth); // &#39;&#39;

 el.dataset.dateOfBirth = &#39;1985-01-05&#39;; // 设置data-date-of-birth的值.

 console.log(&#39;someDataAttr&#39; in el.dataset);//false

 el.dataset.someDataAttr = &#39;mydata&#39;;

 console.log(&#39;someDataAttr&#39; in el.dataset);//true

 </script>

Copy after login

If you want to delete a data-attribute, you can do this: delete el . dataset . id ; or el .dataset . id = null ; .


Looks beautiful, haha, but unfortunately, the new dataset attribute is only implemented in Chrome 8+ Firefox (Gecko) 6.0+ Internet Explorer 11+ Opera 11.10+ Safari 6+ browser , so it is best to use getAttribute and setAttribute to operate during this period.

About data-Attribute selector

In actual development, you may find it useful, you can customize the data based on - Attribute selection related elements. For example, use querySelector

All to select elements:

The code is as follows:

//Select all elements containing the 'data-flowering' attribute
document . querySelectorAll ( '[data-flowering]' ) ;

//Select all elements containing the 'data-text-colour' attribute value of red
document . querySelectorAll ( '[data-text-colour="red"]' ) ;

Similarly, we can also set CSS styles for corresponding elements through the data- attribute value, such as the following example:


The code is as follows:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

<style type ="text/css">

 

  .user {

 

   

width

 : 256px ;

 

   

height

 : 200px ;

 

  }

 

  .user[data-name=&#39;feiwen&#39;] {

 

  color : brown

 

  }

 

  .user[data-name=&#39;css&#39;] {

 

  color : red

 

  }

 

  </style>

 

  <p

class

 = "user" data-id = "123" data-name = "feiwen" > 1 </p>

 

  <p class = "user" data-id = "124" data-name = "css" > 码头 </p>

Copy after login
[Related recommendations]

1.

Html5 free video tutorial

2.

Detailed explanation of event attributes of H5

3.

Detailed explanation of H5 28 very important new features, new tricks and new technologies

4.

H5 Make a code demonstration of a timer

5.

H5 Detailed explanation of examples of completing multiple image uploads

The above is the detailed content of Detailed explanation of H5's custom attributes data-*. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
1 months ago By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Table Border in HTML Table Border in HTML Sep 04, 2024 pm 04:49 PM

Guide to Table Border in HTML. Here we discuss multiple ways for defining table-border with examples of the Table Border in HTML.

Nested Table in HTML Nested Table in HTML Sep 04, 2024 pm 04:49 PM

This is a guide to Nested Table in HTML. Here we discuss how to create a table within the table along with the respective examples.

HTML margin-left HTML margin-left Sep 04, 2024 pm 04:48 PM

Guide to HTML margin-left. Here we discuss a brief overview on HTML margin-left and its Examples along with its Code Implementation.

HTML Table Layout HTML Table Layout Sep 04, 2024 pm 04:54 PM

Guide to HTML Table Layout. Here we discuss the Values of HTML Table Layout along with the examples and outputs n detail.

Moving Text in HTML Moving Text in HTML Sep 04, 2024 pm 04:45 PM

Guide to Moving Text in HTML. Here we discuss an introduction, how marquee tag work with syntax and examples to implement.

HTML Ordered List HTML Ordered List Sep 04, 2024 pm 04:43 PM

Guide to the HTML Ordered List. Here we also discuss introduction of HTML Ordered list and types along with their example respectively

HTML onclick Button HTML onclick Button Sep 04, 2024 pm 04:49 PM

Guide to HTML onclick Button. Here we discuss their introduction, working, examples and onclick Event in various events respectively.

HTML Input Placeholder HTML Input Placeholder Sep 04, 2024 pm 04:54 PM

Guide to HTML Input Placeholder. Here we discuss the Examples of HTML Input Placeholder along with the codes and outputs.

See all articles