3

いくつかの js を動的に DOM 要素に挿入して実行しようとしています。ただし、で注入する$(document).ready()と、スクリプトは評価されません (ただし、適切に注入されます)。また、DOM の読み込み時に挿入しようとしても、コンテナー要素はまだ存在しません。コンテナ内にスクリプト タグをハードコーディングしてテストしたところ、うまく機能しました。js を DOM 要素に挿入し、DOM の準備ができているか、ページの読み込み時に評価する方法はありますか?

$(document).ready(function(){
    var container = document.getElementById('container_div');
    var script = document.createElement('script');
    script.type = 'text/javascript';
    script.appendChild(document.createTextNode('[script]'));
    container.appendChild(script);
    //I've also tried .insertBefore and
    //.parentNode.insertBefore and jQuery's .append()
});

私が達成しようとしていることは可能ですか?

4

1 に答える 1

1

純粋な JavaScript の場合:

var s = document.createElement('script');
s.setAttribute('src','js/myscript.js');
document.body.appendChild(s);

これはjQuerifyからのもので、jqueryを任意のページに「インポート」するために使用するため、firebugでハッキングできますが、任意のスクリプトで動作するはずです。

于 2012-05-11T15:11:22.080 に答える