自分のコードにビデオを表示してから、setTimeoutを使用して指定した時間が経過すると、別のコードにデフォルト設定します。以下は私のコードです。ビデオファイルが表示されますが、指定された1秒後には、デフォルトの/ 2番目のコードを表示せずに消えます。それだけで空白になる。なぜHTMLコードのsettimeout機能が動作しないのですか?
<div id="video159795815158585" style="width: 300px; height: 250px;">
<script src="http://p.algovid.com/player/tlvplayer.js?p=1597958151&sid=[REPLACE TO SPECIFIC DOMAIN]&cb=58585&w=300&h=250&d=[REPLACE TO SPECIFIC DOMAIN]" type="text/javascript">
</script>
<script type="text/javascript">
setTimeout(function(){ document.getElementById('video159795815158585').innerHTML = "<script type="text\/javascript" src="\/\/display.blutonic-ads.com\/2.0\/9608\/adtag.js" data-tc-slot="26539" data-tc-size="300x250" data-tc-publisher="41b30f06-306c-5b38-9b50-7a5bdd3d9f9a"><\/script> <noscript> <img src="http:\/\/p.algovid.com\/ppx\/error?en=1&em=nojs&p=1597958151&sid=[REPLACE INTO DOMAIN]&cb=58585&domain=[REPLACE TO SPECIFIC DOMAIN]" width="1" height="1"><\/noscript>"; }, 1000);
</script>
<noscript>
<img src="http://p.algovid.com/ppx/error?en=1&em=nojs&p=1597958151&sid=[REPLACE INTO DOMAIN]&cb=58585&domain=[REPLACE TO SPECIFIC DOMAIN]" width="1" height="1">
</noscript>
これは明らかに、JavaScriptコード内の引用の構文エラーを
<script type="text/javascript" src="//display.blutonic-ads.com/2.0/9608/adtag.js" data-tc-slot="26539" data-tc-size="300x250" data-tc-publisher="41b30f06-306c-5b38-9b50-7a5bdd3d9f9a"></script>
あなた自身の質問で構文の強調表示を見てください。問題が表示されます。 – SLaks
innerタグ付きのスクリプトタグを追加することはできません。 – epascarello
''はスクリプトを終了します。 1つのトリックは '' s' + 'cript>''のようなものです。しかし、これは既にSOに関するいくつかの質問でカバーされています。とにかくブラウザが挿入されたスクリプトを実行しないという事実に加えて、別のコメント者が指摘するように、 'createElement( 'script')'のようなDOMルーチンをスクリプトに挿入する必要があります。 –