jQuery对象和window对象

我正在玩jQuery的内容,只是为了了解它是如何工作的.我在很大程度上理解它,但我对某些事情感到好奇.

在jQuery中,我们实际上创建了jQuery对象(在第60行):

jQuery = function( selector, context ) { // The jQuery object is actually just the init constructor 'enhanced' return new jQuery.fn.init( selector, context, rootjQuery ); },

init方法很长,所以我会省去你的复制和粘贴(如果你想看到它,请查看源代码,它在第123行).这个方法可以通过jQuery.prototype获得.从本质上讲,它会查看参数并对元素选择做出一些决定.

在脚本的下方(第19174行),我们有:

// Expose jQuery to the global object window.jQuery = window.$= jQuery;

这很有趣,因为注释掉这一行仍然可以在全局对象中使用$.

为什么需要这个?似乎调用init方法的jQuery函数创建了$way的全局方式.我在Chrome,Firefox和Safari上进行了测试,他们都可以在没有Expose jQuery的情况下使用全局对象线.

这适用于旧版浏览器和向后兼容性?

最佳答案 jQuery库在闭包中定义,该行真正将库公开到全局范围.

alert($)

我尝试在小提琴http://jsfiddle.net/RBG7P/1/中评论该行,它引发了我一个例外.当没有评论时,它起作用了.

你确定你做得对吗?

    本文转自网络文章,转载此文章仅为分享知识,如有侵权,

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值