-1

私はそのようなことをしたい:

<body>
<script id="a" >
//Here i do a lot of things, then
document.body.removeChild(document.getElementById("a"));
</script>
</body>

そして、それは機能していません!

4

2 に答える 2

0

これが機能するかどうかはわかりません。スクリプトを挿入する場所によっては、ブラウザがDOM の作成を完了する前にコードを実行する場合があります。コードを実行する前に、jQuery のようなフレームワークを使用して、ドキュメントの読み込みが完了するのを待つ方がよいでしょう。jquery を使用する場合は、次のように動作します。

<script id="a">
    $(document).ready(function(){
        //do your stuff here

       $("#a").remove();
    });
</script>           
于 2012-04-20T07:26:37.367 に答える
0

スクリプト自体を削除しようとすると、問題が発生する可能性があります。多分これはうまくいくでしょう...

<script id="a">
    var stuffFinished = false;
    $(document).ready(function(){
        //do your stuff here
        stuffFinished = true;
    });
</script> 

<script id="b">
    $(document).ready(function(){
       var timer = setInterval(function() {
         if (stuffFinished) {
           $("#a").remove();
           clearTimeout(timer);
         }
       }, 1000);
    });
</script> 

私はこれをテストしていません。ただのアイデアです...

于 2012-04-20T07:41:22.447 に答える