HTML 5数据属性是否支持旧版浏览器?

ble*_*der 14 javascript jquery html5 cross-browser

我将一些自定义数据存储在HTML5数据属性中以进行Jquery处理.旧版浏览器中是否可以使用自定义数据属性?

Spu*_*ley 20

HTML5 datalist属性在旧版浏览器中不可用(尽管可以很容易地填充).你总是可以使用标准getAttribute方法,而不是data-xxx所有浏览器都接受HTML元素的属性(只要你处于HTML模式而不是xHTML,它们是无效的)

但是你的问题似乎更像是关于jQuery而不是HTML5,为此,答案是肯定的 - jQuery .data()方法在jQuery 支持的所有浏览器中都可用.


Jam*_*ice 9

该属性本身适用于所有浏览器.毕竟这只是一个属性.在属性将存在于DOM中的意义上,这将"起作用":

<div random-attribute="hello"></div> <!-- invalid, but "works" -->
<div data-random="hello"></div> <!-- valid (in browsers with HTML5 support) -->
Run Code Online (Sandbox Code Playgroud)

dataset元素的native 属性在旧版浏览器中不起作用,但getAttribute会:

var random = document.getElementById("x").dataset.random;
// or
var random = document.getElementById("x").getAttribute("data-random");
Run Code Online (Sandbox Code Playgroud)


Dan*_*ele 1

检查此网站的 HTML5 浏览器兼容性

html5test.com