各位,
请教个jquery源码的问题,在源码中:
有
var jQuery = function( selector, context ) {
return new jQuery.fn.init( selector, context, rootjQuery );
}
和
jQuery.fn = jQuery.prototype = {
constructor: jQuery,
init: function( selector, context, rootjQuery ) {
... ...
}
}
那么,为什么在jQuery外部访问不到jQuery.init()方法呢?
具体就是为什么不能这样访问 :(尽管这样访问没有意义,但是想搞明白为什么不能访问)
<script type="text/javascript" src="js/jquery-1.6.1.js"></script>
<script type="text/javascript">
$(function(){
$.init(); //undefined. 这个为什么是undefined?
});
</script>
var jQuery = (function() { // (1)
var jQuery = function(s, c) { // (2)
return new jQuery.fn.init(s, c, rootjQuery);
},
jQuery.fn = jQuery.prototype = {
constructor : jQuery,
init : function(selector, context, rootjQuery) {
// if else .... return ? ;
return jQuery.makeArray(selector, this);
}
};
return jQuery;
})();
window.jQuery = window.$ = jQuery;
})( window );
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。