2017-05-18 65 views
0

我在Wordpress页面上有两个iFrames,每10秒自动刷新一次,并且我想抵消它们刷新5秒的时间。我提出了在页面加载时加载一个iframe的想法,并且在延迟5秒后加载第二个iframe。在延迟后加载iFrame的源码

到目前为止,下面的代码等待5秒到display第二个iframe,但它们最终仍然同时刷新。

我一直在这一整天工作,我觉得我错过了一件非常简单的事情。

<iframe width="100%" id="delayFrame" src="http://example.com"></iframe> 

这里是jQuery的:

jQuery(function($){ 
jQuery("#delayFrame").slideUp(300).delay(5000).fadeIn(400); }); 

这里是一个I帧使​​用刷新代码,位于源文件本身:

<script type="text/javascript"> 
$(document).ready(function() { 
    var refreshId = setInterval(function() { 
    var fadeInData = function fadeInData() { $("#responsecontainer").fadeIn(); } 
    var delaydata = function delayData(){$("responsecontainer").delay('5000');} 
    var loadData = function loadData() { $("#responsecontainer").load('display.php', fadeInData); } 
    $("#responsecontainer").fadeOut(loadData); 
    }, 10000); 
$.ajaxSetup({ cache: false }); 


}); 

回答

0

我能够用一些帮助来解决这个问题,所以我正在回答我自己的问题。

如果iframe文件在文件内部具有.setTimeout函数,则文件本身需要在与页面其余部分不同的时间加载,最简单的方法是切换源文件iframe。

下面是HTML:

<IFRAME id="delayFrame" src="" width="100%" height="500 style="display:none;"> 
</IFRAME> 

而jQuery的:

jQuery(function($){ 
setTimeout(
    function() 
    { 
    jQuery('#delayFrame').css("display", "block"); 
    jQuery('#delayFrame').attr('src','http://example.com'); 
    }, 5000); 
}); 

现在从 “无” 的显示样式切换到 “块” 在5秒后,然后的IFRAME改变来源,所以.ifTimeout 里面的 iFrame是从头开始的。