2015-10-15 64 views
0

所以我运行了一个非常简单的函数atm,它在页面加载时运行。但是,当页面加载完成时,内容本身有时会花费半秒左右的时间来实际弹出。这通常不会是一个问题,但我的变量之一依赖于加载的内容是可以运行JS功能页面已加载后2秒?我知道我可以使用超时,但肯定如果用户在慢速上网,并且需要比加载页面更长的时间,它会在它准备好之前运行?加载页面后延迟后运行JS函数

我已经写了,用我的代码是在这里:

$(window).bind("load", function() { 


    var subTotal = $("span.wsite-price").html(); 
     alert (subTotal); 

    }); 

任何帮助深表感谢。

感谢

+0

关于'DOMContentLoaded/ready','setTimeout'为2秒,然后调用函数,请解码这个,你会得到答案 – Tushar

+0

如果你把setTimeout调用放在窗口加载调用中,它将不会执行,直到页面已加载。 – j08691

+3

''的HTML如何填充?也许有一种可以使用的“完成式”事件,尤其是在使用AJAX或jQuery框架的情况下。这样,你就不会等待两秒钟。只要获得信息,无论是需要10秒还是80毫秒 –

回答

0

因为你<span class="wsite-price">200</span>没有动态加载的,但它是静态的HTML文档的一部分,你当前的代码将正常工作。在页面完成加载之前,$(window).bind("load", function() { //code here })内部没有任何内容被执行。

+0

在实际中似乎并不像这样工作。 – dwinnbrown

+0

尝试使用jQuery的'$(document).ready(function(){// code here})'而不是,看看你是否得到了期望的行为 –