如何在document.ready中定义全局函数?

时间:2015-07-30 20:05:30

标签: javascript jquery

我想在document.ready中定义一个需要在document.ready之外调用的全局函数。我试图将函数定义为

var global_fn={};
$(document.ready).function(){
   global_fn.my_function=function(){
    console.log('my function');
   };
global_fn.my_function();
}
global_fn.my_function();

global_fn.my_function();内的函数调用document.ready效果很好,但在它之外会抛出错误:Uncaught TypeError: global_fn.my_function is not a function。我错过了什么?

NB。document.ready内定义函数的原因是因为我使用的是第三方api,只有在dom准备就绪后才有效,并且使其成为全局的原因是因为我想在另一个js文件中调用它。

1 个答案:

答案 0 :(得分:2)

它不在document.ready函数之外工作的原因是,当它在js文件中出现时,该函数会在document.ready创建之前执行

只要他们在document.ready之前没有尝试访问它,它就会出现在您的其他JS文件中。