1

我正在尝试执行 jQuery 函数两次。当 DOM 准备好时一次,然后在页面加载时再一次。大多数情况下不需要第二次调用,但每隔一段时间就需要一次。这是我的代码:

$(document).ready(function() {
    function someFunction() {
        alert('function complete');
    }
});

$(window).load(function() {
    someFunction();
});​

我究竟做错了什么?

4

3 回答 3

4

您在传递给 $(document).ready() 的函数中定义 someFunction ...函数的范围应该在它之外...试试这个:

function someFunction() {
    alert('function complete');
}

$(document).ready(someFunction);
$(window).load(someFunction);​
于 2012-05-04T16:02:37.687 回答
2

试试这个:

function someFunction() {
    alert('function complete');
}

$(document).ready(function() {
    someFunction();
});

$(window).load(function() {
    someFunction();
});
于 2012-05-04T16:01:11.730 回答
2

someFunction在 中不可访问,$(window).load因为它的范围仅限于document.ready. 把它拿出来document.ready放在全球范围内。

function someFunction() {
        alert('function complete');
}

$(document).ready(function() {
     someFunction(); 
});

$(window).load(function() {
    someFunction();
});​
于 2012-05-04T16:01:31.417 回答