如果所有其他都失败,请尝试使用纯 JavaScript:
如果您想使用现有的原生 JavaScript 检索或更新数据属性,则可以使用getAttribute和setAttribute方法来实现,例如:
var myEl = document.getElementById('myElement');
myEl.setAttribute('rot', '10');
var attributeRed = myEl.getAttribute('rot');
此方法适用于所有现代浏览器,但它不是 data- 属性的预期使用方式。
实现相同目的的第二种(新的和改进的)方法是访问元素的数据集属性:
var myEl = document.getElementById('myElement');
myEl.dataset.rot = '10';
var attributeRed = myEl.dataset.rot;
此数据集属性(新 HTML5 JavaScript API 的一部分)将返回所有选定元素的数据属性的 DOMStringMap 对象。使用这种方法时,您可以放弃 data- 前缀,而不是使用完整的属性名称,而是直接使用您分配给它的名称来引用自定义数据。包含连字符的数据属性名称将被去掉连字符并转换为 CamelCase。
(来源:http: //html5doctor.com/html5-custom-data-attributes/)
但是,为了跨浏览器的兼容性,仍然建议使用原生的 getAttribute 和 setAttribute 方法。