0

Stack Overflow で、IE (この場合は条件付き HTML をサポートしていない IE10) を取得して別の JavaScript ファイルを読み込む方法についての小さなヒントを見ました。

IEに別のjsファイルをロードさせる

ただし、私の場合、このハックは FireFox と IE では機能しますが、Chrome では機能しません。私のテストがヘッダーにあるためだと思います。本当?

あまり宣言的ではなく、jquery getScript() のような命令的なものを検討する必要がありますか?

(Chrome は PouchDB-nightly.js をロードしていません)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Map DownLoader - V1.2</title>
    <script src="../Kendo/jquery.1.9.1.min.js"></script>
    <script src="../Kendo/kendo.all.js"></script>
    <script src="xhr2lib.js"></script>
    <script type="text/javascript">
        var ie = !(navigator.userAgent.indexOf("MSIE") < 0);
        if (ie == false) {
            document.write("<script src=\"../PouchDB/pouchdb-nightly.js\"></scr" + "ipt>");
        } else {
            document.write("<script src=\"../PouchDB/pouchdb-nightly-IE.js\"></scr" + "ipt>");
        }
    </script>
<!--    <script src="../PouchDB/pouchdb-nightly.js"></script>-->
    <script src="VM.js"></script>
    <script src="LayerChooser.js"></script>
    <script src="Downloader.js"></script>
    <link href="../Kendo/styles/kendo.common.min.css" rel="stylesheet" />
    <link href="../Kendo/styles/kendo.metroblack.min.css" rel="stylesheet" />
    <link href="../Kendo/styles/kendo.dataviz.metroblack.min.css" rel="stylesheet" />
    <link href="../Styles/ButtonStyles.css" rel="stylesheet" />
    <link href="../Styles/DownloadStyle.css" rel="stylesheet" />
</head>
4

2 に答える 2

1

これを試してください、それはクロムで私のために働きます:

<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>

しかし、コードがクロムで動作するため、おそらく何らかのエラーが発生しました..

于 2013-06-24T14:49:58.327 に答える
0

これは、クロムおよび他のすべてのブラウザーで機能するはずです。

 if (ie == false) {
    var s = document.createElement('SCRIPT');
    s.charset = 'UTF-8';
    s.src ='../PouchDB/pouchdb-nightly.js';
    document.getElementsByTagName('HEAD')[0].appendChild(s);
  }
于 2013-06-24T14:54:34.283 に答える