如何在IE10中为数据集变量赋值?

时间:2019-05-22 18:28:24

标签: javascript internet-explorer

我正在使用香草Javascript开发一个小脚本,并且试图为这样的数据集变量赋值:

(function(e,l,b,u,t,n){
    t=l.createElement(b);
    t.dataset.id='my-script';
    t.dataset.orgId='34';
})(window,document,'script','https://example.com/assets/my_script.js');

但是,在IE10和9中进行测试时,出现以下错误:

  

SCRIPT5007:无法设置未定义或空引用的属性'id'

经过一番研究,我发现Internet Explorer 10不支持elem.dataset。但是我一直无法找到一种为该元素分配值的方法,我尝试了以下方法:

(function(e,l,b,u,t,n){
    t=l.createElement(b);

    if (t.dataset)
        t.dataset.id='my-script';
    else
        t.setAttribute('id', 'my-script');
    t.async=1;

    t.src=u;

    if (t.dataset)
        t.dataset.orgId='34';
    else
        t.setAttribute('orgId', '34');
})(window,document,'script','https://exampl.com/assets/my_script.js');

但无济于事。

1 个答案:

答案 0 :(得分:1)

N属性始终以N开头。您需要在代码中使用该前缀。

并且该属性应不使用大写字母,因此a变为b

dataset