我将一些自定义数据存储在HTML5数据属性中以进行Jquery处理。旧版浏览器中是否可以使用自定义数据属性?
答案 0 :(得分:19)
HTML5 datalist
属性在旧版浏览器中不可用(虽然它可以很容易地填充)。您可以随时使用标准getAttribute
方法,并且所有浏览器都接受HTML元素的data-xxx
属性(只要您处于HTML模式而不是xHTML,它们无效)
但是你的问题似乎更像是关于jQuery而不是HTML5,为此,答案是是 - jQuery .data()
方法在jQuery支持的所有浏览器中都可用。
答案 1 :(得分:9)
属性本身适用于所有浏览器。毕竟这只是一个属性。在属性将存在于DOM中的意义上,这将“起作用”:
<div random-attribute="hello"></div> <!-- invalid, but "works" -->
<div data-random="hello"></div> <!-- valid (in browsers with HTML5 support) -->
元素的原生dataset
属性在旧版浏览器中不起作用,但getAttribute
会:
var random = document.getElementById("x").dataset.random;
// or
var random = document.getElementById("x").getAttribute("data-random");
答案 2 :(得分:1)
在HTML5中查看此网站的浏览器兼容性
答案 3 :(得分:0)
支持HTML的任何内容都可以访问HTML数据属性。所以通过JQUERY处理它的客户端应该是绝对正常的。
事实上,我最近不得不为一个正在进行的项目做这件事,并且它一直在努力达到ie7。
如果您想通过CSS使用HTML数据属性进行样式设置,那么您需要支持CSS3选择的浏览器。哪个是IE9以及一些旧版本的firefox。
您可能会对此感兴趣: