jquery在document.ready()之外定义对象

时间:2011-01-23 19:50:36

标签: javascript jquery object methods load

我在jquery document.ready调用之外创建了一个对象,然后从document.ready中调用该对象方法。它在firefox上工作正常,但在chrome中出错。很明显,如果我将该对象放在document.ready中,它可以正常工作,但是我无法从document.ready之外调用该对象。所以我需要解决这个问题。以下是代码

var status = {
       method_one: function() { ...},
       method_two: function() { ...}
}

jquery(function() { // document ready
    status.method_one(); // giving error here in chrome, but does not in firefox.
});

2 个答案:

答案 0 :(得分:1)

在Chrome中适用于我:http://jsfiddle.net/5s739/

您自己设置jquery值吗?也许它应该是jQuery,资本 Q?

var status = {
    method_one: function() { alert(1); },
    method_two: function() { alert(2); }
}

jQuery(function() {
    status.method_one();
});

您可以通过检查$ == jqueryjQuery == jquery来快速测试,除非您自己分配。

答案 1 :(得分:0)

怎么样:

var status = null;

jquery(function() { // document ready
    status = {
       method_one: function() { ...},
       method_two: function() { ...}
    }
    status.method_one(); // giving error here in chrome, but does not in firefox.
});

你还可以在document.ready()

之外调用状态