在我听说自我执行函数之前,我总是习惯这样做:
$(document).ready(function() { doSomething(); }); function doSomething() { // blah }
(function doSomething($) { // blah })(jQuery);
解决方法
不.自动执行函数在Javascript引擎找到它时运行.
但是,如果您在结束之前将所有代码放在文档的末尾< / body>标签(这是highly recommended),然后你不必等待DOM准备就绪,因为你已经自动过去了.
如果你想要的只是你的$变量的范围,并且你不想将你的代码移动到页面的底部,你可以使用:
jQuery(function($){ // The "$" variable is now scoped in here // and will not be affected by any code // overriding it outside of this function });