如何调用$(document).ready中的函数
我试图调试我使用jQuery.
Web应用程序jQuery.
在firebug im中调用$(document).ready中的函数..
function val() { console.log('validated outside doc.ready'); } $(document).ready(function() { console.log('document ready...'); function validate() { console.log('validated!'); } }
在firebug控制台中,我输入validate()
,它说它不是一个函数
如果我键入val()
它工作正常。
我如何从控制台调用validation?
你没有调用这样的函数,你只需要定义函数。
正确的方法是在document.ready
之外定义函数并在其中调用它:
// We define the function function validate(){ console.log('validated!'); } $(document).ready(function(){ // we call the function validate(); });
另一种选择是自我调用这样的函数:
$(document).ready(function(){ // we define and invoke a function (function(){ console.log('validated!'); })(); });
您的validate
函数是您传递给jQuery ready
处理程序的函数的本地函数。
如果你这样做:
window.validate = function(){ /*....*/ };
您将能够从控制台访问。 但是污染全局范围并不是一个好习惯,除非它只是用于调试。
好吧,你有什么理由需要在文件准备好的内容中使用该function吗? 只有在这些括号(范围)内,该函数才会存在。 只需将其移出,或仅将其全部移出document.ready