0

サーバーから広告jsコードを取得し、指定されたDOM要素に配置するjs関数があります。次のようになります。

function LoadAd(scriptContainer)
{           
    var js = document.createElement("script");
    js.async = true;
    js.src ='someAdUrl';
    var sHolder = document.getElementById(scriptContainer);
    if (sHolder != null) {
        sHolder.appendChild(js);
    }
}

引数 'scriptContainer' は、作成された js 要素を含む必要がある DOM 要素の ID です。

この外部 js ファイルには、広告を提供する必要がある多くのコードが含まれています。しかし、このコードに到達することも、実行されることもありません。

この js src を html に直接配置すると:

<script src='someAdUrl'></script>

それは正常に動作します。確認したところ、jsファイルが読み込まれています。

何か案は?

編集: js ファイルの内容の例を次に示します。

document.write('<!-- Some Message -->\n\n<a href="SomeUrl" target=\"_blank\">\n<img width=\"336\" height=\"110\" border=\"0\" src="someImageSource">\n</a>\n');

そして、それは常に含まれていますdocument.write

4

2 に答える 2

1

私の場合はこのコードを使用します。それはあなたを助けるかもしれません

var js=document.createElement('script');
js.setAttribute('src','http://domain.com/js/jscpt.js');
document.body.appendChild(js);
于 2012-09-04T09:59:30.263 に答える
1

外部JSファイルを読み込んでいる場合、実際に関数が呼び出されて実行されているか確認しましたか?

関数が自己実行型ではなく、明示的に呼び出さない場合、コードは実行されません。

于 2012-09-04T09:52:25.470 に答える