Javascript/Jquery setTimeout 函数不适用于长 html
Javascript/Jquery setTimeout function not working with long html
所以我从某人那里得到了这个函数,它的作用是在等待 10 秒后用 swf 或其他 html 代码替换我的图像,就在这里。
<input name="sample_check3" id="sample_check3" value="1" type="radio" onclick="showStuff('stage');setTimeout(function() {$('#stage').html('HTML CODE HERE'); }, 10000)""/>
如果我只是在那里放一个简单的 html 段落或标题,它会成功地用它替换图像,但是当我尝试将我的 swf 代码放在那里时,它认为 swf 嵌入代码是 HTML,基本上只是在它所在的位置立即"回显"它,而不是等待。这就是我替换它的东西。
<input name="sample_check3" id="sample_check3" value="1" type="radio" onclick="showStuff('stage');setTimeout(function() {$('#stage').html('<OBJECT style="z-index:2; position:absolute; top:20%; left:44%;" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" WIDTH="320" HEIGHT="240" id="rice" ALIGN="">
<PARAM NAME=movie VALUE="rice.swf"> <PARAM NAME=quality VALUE=high> <PARAM NAME=bgcolor VALUE=#333399> <EMBED src="rice.swf" quality=high bgcolor=#333399 WIDTH="320" HEIGHT="240" NAME="rice" ALIGN="" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer"></EMBED> </OBJECT>'); }, 10000)""/>
我尝试使用单引号,双引号,引用引号,这一切都会产生sam结果。它只是将 swf 放在它所在的位置,并在它之后打印); }, 10000)""/>
,因为它基本上忘记了它的 javascript(不是忘记,我只是不知道如何解释它 xD)无论如何,我希望有人可以帮助我,谢谢。
最后还有一个额外的"
:
<input name="sample_check3" id="sample_check3" value="1" type="radio"
onclick="showStuff('stage');
setTimeout(function() {$('#stage').html('HTML CODE HERE'); }, 10000)"" /> <---
如果这不是问题,我们可能需要看到 html 正在.html()
中设置
编辑:我不知道我昨天如何错过了带有实际html的第二个示例。但是,在查看您的html时,我强烈建议您不要内联JavaScript。您可以利用 jQuery 的强大功能,并可以像这样设置您的点击处理程序:
HTML:
<input name="sample_check3" id="sample_check3" value="1" type="radio" />
Javascript:
$('#sample_check3').on('click', function() {
showStuff('stage');
setTimeout(function() {
$('#stage').html('<OBJECT style="z-index:2; position:absolute; top:20%; left:44%;"
classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0"
WIDTH="320" HEIGHT="240" id="rice">
<PARAM NAME=movie VALUE="rice.swf">
<PARAM NAME=quality VALUE=high>
<PARAM NAME=bgcolor VALUE=#333399>
<EMBED src="rice.swf" quality=high bgcolor=#333399 WIDTH="320" HEIGHT="240"
NAME="rice" TYPE="application/x-shockwave-flash"
PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer">
</EMBED>
</OBJECT>');
}, 10000) ;
});
我会将这一大块代码分成它自己的函数,就像这个 jsFiddle 示例一样。这应该使维护变得更加容易。请注意,在示例中,我删除了您对showStuff
的调用,只是因为我没有代码,并且删除它作为示例比编写虚拟函数更容易。
相关文章:
- window.onload适用于aspx页面,但不适用于普通html
- HTML Oncick事件仅适用于#Anchor标记
- "捆绑;仅适用于HTML/JS的解决方案
- 在Android上使用PhoneGap的地理位置仅适用于index.html
- html 选择列表更改无法在谷歌浏览器上调用方法(适用于 IE)
- JavaScript 键关闭事件仅适用于 HTML 输入标记
- 有没有一个简单的 html 网络服务器适用于 mac
- 从 HTML 调用 WCF 服务总是转到错误函数.适用于 aspx 页面
- 适用于 iPad Web 的 HTML 文本效果动画
- Firefox 中的 HTML 位置问题(适用于 IE 和 Chrome)
- 使用javascript在html中启动和停止嵌入音乐仅适用于IE
- jQuery只适用于HTML文件,不适用于JS文件
- Gzip适用于html,但不适用于javascript或css(Apache)
- iframe中的Html适用于除Opera之外的任何地方
- 无法从.xhtml文件扩展名运行JavaScript;适用于.html
- & # 39; . getelementbyid # 39;仅适用于index.html
- Grunt serve - live reload只适用于app/*.html,而不适用于app/views/*.htm
- HTML & lt; body>jQuery的fadeIn/fadeOut只适用于display:none
- HTML模板解决方案既适用于ASP..NET MVC和浏览器
- Javascript Return False适用于html,而不是head