IE 11中的Javascript运行方式因文件所在位置而异
我有一个JavaScript,有一行有问题(注释): 当我在共享(非本地)驱动器上执行此操作时,该类设置成功。但是当我在本地驱动器上运行它时,它没有设置类(测试时使用的是IE 11中的Javascript运行方式因文件所在位置而异,javascript,jquery,internet-explorer-11,Javascript,Jquery,Internet Explorer 11,我有一个JavaScript,有一行有问题(注释): 当我在共享(非本地)驱动器上执行此操作时,该类设置成功。但是当我在本地驱动器上运行它时,它没有设置类(测试时使用的是$('.oneLine').length()) 我已经用“魔法”修复了这个问题 而不是在JavaScript中设置类。但我很困惑javascript究竟是如何根据文件的来源以不同的方式处理相同的代码的。理解这一点对我的工作非常有帮助我想要的答案可以在这里找到: 事实证明,我需要这个标签来让JavaScript和CSS一致地工作你
$('.oneLine').length()
)
我已经用“魔法”修复了这个问题
而不是在JavaScript中设置类。但我很困惑javascript究竟是如何根据文件的来源以不同的方式处理相同的代码的。理解这一点对我的工作非常有帮助我想要的答案可以在这里找到:
事实证明,我需要这个标签来让JavaScript和CSS一致地工作你是说
p.setAttribute('className','oneLine')代码>在共享驱动器外执行文件时是否工作?如果是这样的话,那就奇怪了,因为它永远不应该起作用。。。您是否能够始终如一地复制该行为?@acdcjunior是的,它是始终如一地复制的。我同意,这很奇怪。。。这就是为什么我把我的问题贴在这里:)
function createCheckboxes(allClasses) {
var form = document.getElementById('showForm');
var p = document.createElement('P');
p.setAttribute('className','oneLine'); //Problematic line
var text = document.createTextNode("All");
var chkbox = document.createElement('INPUT');
chkbox.type = 'checkbox';
chkbox.id = 'ALL_BOX';
p.appendChild(chkbox);
p.appendChild(text);
form.appendChild(p);
for (var key in allClasses) {
p = document.createElement('P');
p.setAttribute('className','oneLine'); //problematic line
text = document.createTextNode(key.replace(/_/g," "));
chkbox = document.createElement('INPUT');
chkbox.type = 'checkbox';
p.appendChild(chkbox);
p.appendChild(text);
form.appendChild(p);
chkbox.className = 'section';
chkbox.id = key;
if (allClasses[key]) {
chkbox.checked = 'true';
}
}
$(p).addClass('oneLine');