在页面加载后执行一个函数--JQuery

时间:2013-07-25 16:46:41

标签: jquery

使用以下内容:

function loadDefault() {
    //default text of "Place Text Here"
    alert("working");
    $(".Singleshell:first").trigger('click');
}
$(window).load(function () {
  //initilize default option

    loadDefault();
});

由于某些原因,似乎对我不起作用。我已经尝试将.load函数放在ready语句中并提醒alert("working")但它似乎没有正确执行。我没有得到一种我能看到的错误消息。它从不加载loadDefault()函数。

想知道为什么会这样,让我知道你的想法?

UPDATE;

我也在使用$(document).ready() - 这有效,但是当它会导致点击时,假设执行的功能将无法正常工作。我相信这是由于仍在装载的其他来源。

更新:

我实际上在考虑使用window.setTimeout(loadDefault, 1000);它似乎有效,但我不确定这是否安全?

2 个答案:

答案 0 :(得分:2)

你可以试试这个

window.onload = loadDefault;

如果可行,则可能是jQuery没有执行加载功能的问题

onload事件是跨浏览器,所以只需使用它。

如果这不起作用,那么我的最后一个建议就是

document.body.onload = loadDefault;

答案 1 :(得分:1)

听起来你需要做的是拥有整个页面必须监听的事件列表。因此,在触发最后一个事件之后,才运行相关代码。因此,如果您有10个面板,所有面板都异步打开各种网页,您将需要一个包含10个真/假负载完整标记的数组或一些这样的...

注意:jQuery有一个可以使用的Ajax停止事件。因此,如果通过jQuery或Ajax加载所有面板,可以检查。 http://api.jquery.com/ajaxStop/