0

在 chrome 中,这行代码返回了一些有用的东西。

$('[data-buyername]').data()

显然,它将返回标签的值data-buyername='somethingArbitrary'

但在 IE8 中,.data()不返回任何内容。

有谁知道如何从这样的标签中获取数据(键和值)?

...

在 chrome 中,.data() 返回一个字典 {'buyername':'somethingArbitrary'},但 IE8 返回一个空字典 {}

4

1 回答 1

0

我没有专门在 IE8 中尝试过,但您可以查看手动查看element's属性是否有效:

var buyerData = $('[data-buyername]').get(0); // Returns the vanilla DOM element

function getData(el) {
    var o = {},
        attrs = el.attributes,
        attr = null;

    for (var i in attrs) {
        attr = attrs[i];
        if (attr.name && attr.name.indexOf('data-') != -1) o[attr.name] = attr.value;
    }

    return o;
}

var data = getData(buyerData);
console.log(data);
于 2013-10-21T22:01:37.460 回答