我收到 SCRIPT5045:在 IE 11 中的严格模式 中不允许分配给只读属性(最新的 Chrome 工作正常)引用该行A.doc.head = A.doc.getElementsByTagName('HEAD')[0];
。
我对如何修复它感到困惑。我已经包含了下面应该是相关代码的内容。
(function (win, doc, arg) {
'use strict';
var A = win[arg.prefix] = {
'win': win,
'doc': doc,
'arg': arg,
'stu': {},
'fun': (function () {
return {
init: function () {
var scripts = A.doc.getElementsByTagName('SCRIPT'),
n = scripts.length,
i;
for (i = 0; i < n; i = i + 1) {
if (scripts[i].src.match(A.arg.src)) {
A.arg.script = scripts[i];
A.arg.options = A.fun.options();
break;
}
}
A.doc.head = A.doc.getElementsByTagName('HEAD')[0];
A.fun.structure();
},
// more functions
}())
};
A.fun.init();
}(window, document, {
'prefix': 'accescape_' + new Date().getTime(),
'src': '/widget.js',
'defaults': {
'language': 'en'
}
}));
最佳答案
document.head
是只读属性。如果你想为 oldIE 填充它,你最好先测试它是否不存在:
if (!doc.head)
doc.head = doc.getElementsByTagName("head")[0];
关于javascript - SCRIPT5045 : Assignment to read-only properties is not allowed in strict mode,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24635139/