当前位置:  开发笔记 > 编程语言 > 正文

当iframe在jQuery中加载完成后,如何触发事件?

如何解决《当iframe在jQuery中加载完成后,如何触发事件?》经验,为你挑选了6个好方法。

我必须在页面中加载PDF.

理想情况下,我希望有一个加载动画gif,一旦PDF加载后替换.



1> travis..:

你有没有尝试过:

$("#iFrameId").on("load", function () {
    // do something once the iframe is loaded
});


+1因为虽然这似乎不适用于iframe中的PDF加载,但它对其他内容类型很有用.
+1并不完全是原始提问者想要知道的(与pdf有关),但这个答案确实符合"当iframe在jQuery中完成加载时如何触发事件?" .谢谢

2> Antti Kissan..:

我很确定它无法完成.

除了PDF之外的其他任何东西,甚至是Flash.(在Safari,Firefox 3,IE 7上测试过)

太糟糕了.


http://web.archive.org/web/20100914111251/http://sykari.net/stuff/iframe/

3> 小智..:

这对我来说(不是pdf,而是另一个" onload抗拒"内容):


  

希望这可以帮助.


应避免使用setTimeout()字符串参数:`setTimeout(WaitForIFrame,200);`
在带有html内容的firefox中不起作用

4> Aamir Afridi..:

我正在尝试这个并且似乎在为我工作:http: //jsfiddle.net/aamir/BXe8C/

更大的pdf文件:http: //jsfiddle.net/aamir/BXe8C/1/



5> keithics..:
$("#iFrameId").ready(function (){
    // do something once the iframe is loaded
});

你尝试过吗?



6> 小智..:

我尝试了开箱即用的方法,我没有测试这个PDF内容,但它确实适用于普通的基于HTML的内容,继承人如何:

第1步:将iframe包装在div包装器中

第2步:将背景图像添加到div包装器:

.wrapperdiv{
  background-image:url(img/loading.gif);
  background-repeat:no-repeat;
  background-position:center center; /*Can place your loader where ever you like */
}

第3步:在你的iframe标签中添加 ALLOWTRANSPARENCY="false"

我们的想法是在包装器div中显示加载动画,直到iframe加载后加载iframe将覆盖加载动画.

试试看.

推荐阅读
黄晓敏3023
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有