我一直很喜欢Lynda.com的Jquery Essential Training,我注意到教练在开始时使用:
Fig. 1
$("document").ready(function(){
fun stuff goes here
});
然而,在他开始使用的某个地方:
Fig. 2
$(function(){
fun stuff goes here
});
从他说话的方式来看,听起来好像是完全同义的(一些固有的jquery简写?)但据我所知,它从未明确触及过。
我确信有人可以快速解决这个问题。我找到了this,但我认为这个问题略有不同 - 我理解在文档就绪上调用函数的概念与全局可用函数的概念; (这些功能也有名称。)
教师使用幻象功能(我认为这是一个没有名字的函数的术语),当输入图2时,他说“所以这将是文档就绪......”
答案 0 :(得分:8)
是的,它们完全相同,只是别名。
以下所有三种语法都是等效的:
$(document).ready(handler) $().ready(handler) (this is not recommended) $(handler)
答案 1 :(得分:1)
默认上下文是文档,因此如果传入一些不引用HTML节点的随机mumbo jumbo字符串,它将是文档。
$('fdsljkfdslj').context
是文件。因为默认上下文是文档,这意味着您不必指定它,只需将函数提供给jQuery,$(function() { });
而且我认为你的意思是$(document)
,因为指定字符串文档不那么受欢迎,因为document
将真实文档对象传递给jQuery。但同样,这将与传递任何内容或mumbo jumbo字符串相同,因为我们从字面上传递document
。