加载iframe时加载文本

时间:2012-10-14 09:25:41

标签: javascript jquery html iframe load

我有一个脚本,会在加载iframe的内容时显示加载文本。 我第一次打开页面,它将完美地工作。 但是在这个页面上我有链接将在iframe中启动,并且不会为这些链接显示加载文本:(

见这里的例子: http://www.ndnm.co.cc/test.php

它会在您第一次加载页面时起作用,但如果您单击“TEST LINK”,则不会显示加载文本:(

注意:iframe正在加载EXTERNAL域

我该如何解决?

非常感谢

2 个答案:

答案 0 :(得分:5)

您可以尝试在链接上放置一个点击事件,所以有人点击它,图像“页面正在加载..”将被显示,并隐藏在已经存在的“hideProgress()”函数中

类似的东西:

<a href="http://www.perdu.com" target="iframe" onClick="document.getElementById('loader').style.display = 'block';">TEST LINK</a><br>

这样的事情:http://jsfiddle.net/SFjS2/(请记住,第二页的加载速度非常快,因此不会轻易看到“Page Loading”图片。在那里放一些东西:P)

答案 1 :(得分:1)

当你标记它时,我会给你一个jquery解决方案。

解决方案代码位于http://jsfiddle.net/nPWAp/1/但HTML是

<body>
<div>
   <a href="#" id="testlink">TEST LINK</a>
</div>
<iframe id="frame"></iframe>
<div id="statement"></div>
</body>

和jQuery是

$(document).ready(function() {
    $("#testlink").click(function() {
      // --- set statement -- 
      $("#statement").show();  // show the div in case it was hidden.     
      $("#statement").text("Loading content..."); // replace the text
      $("#statement").hide(5000); // hide after 5 seconds

      // --- Scrape content --- //        
      $("#frame").attr('src', "http://www.test.com");
    });
});

添加一些CSS

#frame{
wdith: 100%
height: 50em;
border: 1px solid #ccc;
}

它应该都是咕噜声。显然你会想要查看jquery的一些更有趣的选项。

HTH