【发布时间】:2010-03-11 22:04:09
【问题描述】:
我在这里有一个有趣的问题,听起来可能很傻,但是这里有。使用 JQuery 的 ready 函数,我定义了一些函数,如下所示:
$(function(){
var function1 = function(data){
//do something
}
var function2 = function(data){
//do something else
}
});
出于某种原因,为了让 IE 正确呈现我正在使用的内容,必须在 $(document).ready() 函数中完成。但是,一旦我从服务器端获得数据集,我就需要触发这些函数。所以我想我会做这样的事情......
Object.Namespace.callFunction = function(data){
function1(data);
}
...放在脚本中的 ready 函数之外,以便我可以直接调用它。
不幸的是,我知道这行不通,因为它看起来不合逻辑,我已经尝试过了!我使所有这些功能任意,因为它不关心内容,而是概念。我还尝试使用事件处理程序在获得该数据后触发该功能-无济于事!在 $(document).ready() 全局中创建函数的最佳方法是什么?
【问题讨论】:
-
我不是 JQuery 专家,但你为什么不首先使用老式的
function function1(data) { ... }块将函数定义为全局变量? -
正如其他人已经说过的,答案只是将函数定义为函数。为什么这在 IE 中不起作用? 那就是问题。
-
这些只是基本示例。我也在使用 ExtJS Slider 插件,由于某种原因,IE 将无法正确呈现它们,除非它们在 doc.ready() 中完成。
标签: javascript jquery javascript-events