让IE和Chrome加载不同的javascript文件

让IE和Chrome加载不同的javascript文件,javascript,internet-explorer,loading,Javascript,Internet Explorer,Loading,我在Stack Overflow中看到了关于如何让IE(在本例中是IE10,它不支持条件HTML)加载不同JavaScript文件的小技巧 然而,在我的例子中,这项技术适用于FireFox和IE,但不适用于Chrome。我怀疑这是因为我的测试在标题中。这是真的吗 我应该看一些不那么声明性和命令性的东西,比如jquery getScript() (Chrome没有加载dbnightly.js) 地图下载程序-V1.2 变量ie=!(navigator.userAgent.indexOf(“MS

我在Stack Overflow中看到了关于如何让IE(在本例中是IE10,它不支持条件HTML)加载不同JavaScript文件的小技巧

然而,在我的例子中,这项技术适用于FireFox和IE,但不适用于Chrome。我怀疑这是因为我的测试在标题中。这是真的吗

我应该看一些不那么声明性和命令性的东西,比如jquery getScript()

(Chrome没有加载dbnightly.js)


地图下载程序-V1.2
变量ie=!(navigator.userAgent.indexOf(“MSIE”)<0);
如果(即=false){
文件。填写(“”);
}否则{
文件。填写(“”);
}

试试这个,它在chrome中对我有用:

<script type="text/javascript">
function loadit(){
var head= document.getElementsByTagName('head')[0];
   var script= document.createElement('script');
   script.type= 'text/javascript';
   script.src= '../PouchDB/pouchdb-nightly.js';
   head.appendChild(script);

}
</script>

函数loadit(){
var head=document.getElementsByTagName('head')[0];
var script=document.createElement('script');
script.type='text/javascript';
script.src='../pookdb/pookdb nightly.js';
head.appendChild(脚本);
}

但可能是因为您的代码在chrome中工作,所以出现了一些错误。

这应该在chrome和其他浏览器中工作:

 if (ie == false) {
    var s = document.createElement('SCRIPT');
    s.charset = 'UTF-8';
    s.src ='../PouchDB/pouchdb-nightly.js';
    document.getElementsByTagName('HEAD')[0].appendChild(s);
  }

你的代码中没有任何东西在Chrome中不起作用。可能你在
dbnightly.js中有什么东西阻止了Chrome的执行。控制台中有错误吗?控制台中没有错误。但是如果我使用注释掉的行而不是if/ELSE代码(即,忘记IE10支持,只使用FF和Chrome),那么它就可以正常工作。这个脚本在头文件中运行是否会影响某些事情?我不明白,我已经将您的代码复制到一个本地文件中,并按原样工作。它只添加了Chrome、FF甚至Opera中预期的
,而IE在路径中有不同的文件名。它必须是
数据库nightly.js
本身中的某种东西。不管怎样,也许你应该试试下面答案中的代码,它们至少应该更现代一些。虽然
head
相当于
document.head
。我将对此做一些测试(但必须等到下周)。但是既然我有了Jquery,那么您觉得在页面加载之后完全从标题中删除它并使用Jquery GetScript()怎么样?
 if (ie == false) {
    var s = document.createElement('SCRIPT');
    s.charset = 'UTF-8';
    s.src ='../PouchDB/pouchdb-nightly.js';
    document.getElementsByTagName('HEAD')[0].appendChild(s);
  }