Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么不是';HTML代码中的设置超时功能不起作用吗?_Javascript_Html_Settimeout - Fatal编程技术网

Javascript 为什么不是';HTML代码中的设置超时功能不起作用吗?

Javascript 为什么不是';HTML代码中的设置超时功能不起作用吗?,javascript,html,settimeout,Javascript,Html,Settimeout,我想让我的代码显示一个视频,然后使用setTimeout在指定时间后默认为另一个代码。下面是我的代码。视频文件将显示,但在指定的1秒后,它将消失,而不会默认/显示第二个代码。结果就是一片空白 <div id="video159795815158585" style="width: 300px; height: 250px;"> <script src="http://p.algovid.com/player/tlvplayer.js?p=1597958151&sid=[

我想让我的代码显示一个视频,然后使用setTimeout在指定时间后默认为另一个代码。下面是我的代码。视频文件将显示,但在指定的1秒后,它将消失,而不会默认/显示第二个代码。结果就是一片空白

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

setTimeout(函数(){document.getElementById('video1597958151585')。innerHTML=“”;},1000);

这是应该显示的第二个代码

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

很明显,JavaScript代码中引用的语法错误。 当字符串被引用且字符串是JavaScript语句时,需要使用单引号对双引号或转义字符“\”进行嵌套引用

以下三个表达式等效且正确

"<script type='...'>"

'<script type="...">'

"<script type=\"..\">"
“”
''
""
请注意使用单引号和双引号。 单引号和双引号在JavaScript中的效果是相同的,您可以在创建字符串时混合使用单引号和双引号,只要字符串的开头和结尾使用相同类型的引号


上面的描述只解决了语法错误,但没有解决函数问题。 您面临的函数问题是如何动态加载JavaScript脚本文件,下面的代码希望对您有所帮助

<script type="text/javascript">
    var ohead= document.getElementsByTagName('head')[0];
    var oScript= document.createElement("script");
    oScript.type = "text/javascript";
    oScript.src= "//display.blutonic-ads.com/2.0/9607/adtag.js";
    ...
    setTimeout("oHead.appendChild(oScript)",1000);
</script>

var ohead=document.getElementsByTagName('head')[0];
var oScript=document.createElement(“脚本”);
oScript.type=“text/javascript”;
oScript.src=“//display.blutonic-ads.com/2.0/9607/adtag.js”;
...
setTimeout(“oHead.appendChild(oScript)”,1000);

很明显,JavaScript代码中引用的语法错误。 当字符串被引用且字符串是JavaScript语句时,需要使用单引号对双引号或转义字符“\”进行嵌套引用

以下三个表达式等效且正确

"<script type='...'>"

'<script type="...">'

"<script type=\"..\">"
“”
''
""
请注意使用单引号和双引号。 单引号和双引号在JavaScript中的效果是相同的,您可以在创建字符串时混合使用单引号和双引号,只要字符串的开头和结尾使用相同类型的引号


上面的描述只解决了语法错误,但没有解决函数问题。 您面临的函数问题是如何动态加载JavaScript脚本文件,下面的代码希望对您有所帮助

<script type="text/javascript">
    var ohead= document.getElementsByTagName('head')[0];
    var oScript= document.createElement("script");
    oScript.type = "text/javascript";
    oScript.src= "//display.blutonic-ads.com/2.0/9607/adtag.js";
    ...
    setTimeout("oHead.appendChild(oScript)",1000);
</script>

var ohead=document.getElementsByTagName('head')[0];
var oScript=document.createElement(“脚本”);
oScript.type=“text/javascript”;
oScript.src=“//display.blutonic-ads.com/2.0/9607/adtag.js”;
...
setTimeout(“oHead.appendChild(oScript)”,1000);

查看您自己的问题中突出显示的语法,您会发现问题所在。您不能添加带有innerHTML的脚本标记并期望它运行。
将终止脚本。一个技巧是将其编写为类似
'
的内容。但这已经包含在一些问题中。此外,正如另一位评论员指出的那样,浏览器无论如何都不会运行插入的脚本——您需要使用DOM例程插入脚本,例如
createElement('script')
:(嘿,伙计们……谢谢你们的评论,但我不知道任何编码……这段代码来自所有的谷歌搜索,所以我不知道如何将每个人的建议应用到我所拥有的内容中。有没有办法让我的代码发挥作用呢?\TT看看你自己问题中的语法突出显示,你会发现问题所在。你不能添加脚本标记使用innerHTML,并期望它运行。
将终止脚本。一个技巧是将其编写为类似于
'
。但这已经包含在一些问题中。此外,正如另一位评论员指出的那样,浏览器不会运行插入的脚本,您需要使用DOM r插入脚本诸如
createElement('script')
之类的例程:(嘿,伙计们…谢谢你们的评论,但我不知道任何编码…这段代码来自所有的谷歌搜索,所以我不知道如何将每个人的建议应用到我的代码中。有没有任何方法可以让我的代码正常工作?TT_utti试图使用该示例对其进行调整,但仍然不起作用:(我尝试使用该示例进行调整,但仍然不起作用:(