如果我在启动时有很多功能,它们是否都必须在一个单一的之下:
$(document).ready(function() {
或者我可以有多个这样的陈述吗?
你可以有多个,但这并不总是最整洁的事情。尽量不要过度使用它们,因为它会严重影响可读性。除此之外,这是完全合法的。见下文:
http://www.learningjquery.com/2006/09/multiple-document- ready
试试这个:
$(document).ready(function() { alert('Hello Tom!'); }); $(document).ready(function() { alert('Hello Jeff!'); }); $(document).ready(function() { alert('Hello Dexter!'); });
你会发现和这个是等价的,注意执行顺序:
$(document).ready(function() { alert('Hello Tom!'); alert('Hello Jeff!'); alert('Hello Dexter!'); });
还值得注意的是,一个$(document).ready块中定义的函数不能从另一个$(document).ready块调用,我刚刚运行了这个测试:
$(document).ready
$(document).ready(function() { alert('hello1'); function saySomething() { alert('something'); } saySomething(); }); $(document).ready(function() { alert('hello2'); saySomething(); });
输出是:
hello1 something hello2