2011-09-20 109 views
1

我只是对此感到困惑。我正在使用linq.js,这是一个很棒的库,它为js和jQuery添加了LINQ风格的扩展方法。其中之一是$.Enumerable,它用于将jQuery列表转换为具有LINQ优点的另一个对象。这几个星期工作正常。jQuery扩展未在document.ready中定义

今天我做了一些重构,并打破了,但在一种方式,我不知道在所有。具体来说,我已经调试并验证$.Enumerable存在直到 document.ready被调用,并且在准备好的回调函数中,$.Enumerable未定义,尽管被定义为,直到调用document.ready为止。所以,有些东西会重置全局jQuery($)对象到一个新的,否则取消设置$.Enumerable属性,但我无法弄清楚什么。无论今天刚刚开始,但我看不出有什么变化会引起这种情况。我把一些东西从一个页面移动到另一个页面,但是AFAICT,一切顺序都是一样的。希望这可以为一个能指引我正确方向的人敲响钟声。

+0

检查您的javascript引用的确是按照正确的顺序。 – Jack

回答

2

检查你是不是错误地加载了另一个jQuery文件并创建了一个新的jQuery对象。

+0

这很可能是原因... – Koobz

+0

这是问题所在,谢谢! (准确地说,这不是我,直接,它是一个Telerik脚本,包括jQuery的第二个副本,所以找到它有点微妙)。 –