为什么$作为参数传递给Zepto库中的回调($),它们定义了DOMContentLoaded事件监听器?

时间:2012-04-16 18:50:43

标签: javascript zepto

我正在浏览Zepto源代码并且有这个小功能 在这里:gitHub - Zepto.js

ready: function(callback){
      if (readyRE.test(document.readyState)) callback($)
      else document.addEventListener('DOMContentLoaded', function(){ callback($) }, false)
      return this
    }

我不明白为什么$作为参数传递给回调??

2 个答案:

答案 0 :(得分:3)

这样就可以对库进行方便的本地引用,无论你想要什么,都可以调用它。因此,例如,jQuery(它做同样的事情)可能不会被称为$,但是您可以通过执行以下操作来调用它而无需额外的功能:

jQuery(document).ready(function($) {
    // Your jQuery code here, which uses $ as an alias for jQuery
});

答案 1 :(得分:0)

如果您查看repository on gitHub的底部,您会看到:

// If `$` is not yet defined, point it to `Zepto`
window.Zepto = Zepto
'$' in window || (window.$ = Zepto)

它基本上是为你提供Zepto的简写。