How to Use HTML5 Data Attributes with JavaScript

HTML5 supports data attributes that you can use to store extra information with any DOM elements. The name of these data attributes are prefixed with data-* (lowercase) and these can be easily parsed with the HTML5 dataset API.

For instance, if you an element has data attributes as data-name=”apple” and data-color=”red”, you can access them from JavaScript as elem.dataset.name and elem.dataset.color respectively. There’s no need to attach custom class names to attach properties to an HTML element.

The data-* attributes are supported in IE 10+ and all other browsers. Here’s a complete snippet.