当前位置: 首页 > 图文教程 > 网络编程 > Javascript > JQuery困惑—包装集 DOM节点

Javascript
web开发设计师比较费解的JavaScript
jQuery教程:整理的几个常见的初学者问题
免费资源:7个效果非常棒的jQuery 3D效果插件
JavaScript教程:编写匿名函数的几种方法
jQuery教程:jQuery的核心
jQuery教程:jQuery核心方法的使用
webjx收集45个jQuery导航插件和教程
30个气泡悬浮框(Tooltip)的jQuery插件
Jetpack扩展案例:Gmail邮件提醒功能
非常出色的jQuery运动特效可以和Flash媲美
ImagesLazyLoad 图片延迟加载效果
收集国外的14个图片放大编辑的jQuery插件
修改和创建DOM节点两种方式的4种优化方案
jQuery.Switchable整合插件用途介绍
提高Textarea操作性能优秀的jQuery插件
WEBJX收集12个非常有创意的JavaScript小游戏
Javascript教程:关于深入了解JS的几个问题

Javascript 中的 JQuery困惑—包装集 DOM节点


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 39 ::
收藏到网摘: n/a

我使用了JQuery进行了一段时间的前端开发,它让我从选择需要操作的元素痛苦中解放出来,因为提供的选择功能是如此的强大。 同时在开发过程中我被一个问题困惑了很久,也许在别人看来这根本不是问题! $('#someElement')和$('#someElement')[0],这条语句带给我一段时间的困惑,开始时每次使用我总是在其中一个在出错的时候换成另外一个,
虽然每次都能完成功能,但总是有中说不出的郁闷!后来终于搞懂了其中的道理:$('#someElement')虽然只选择元素,但它仍是包装集,
不能使用DOM节点的方法(如SetAttribute等)。而$('#someElement')[0]确是返回包装集中的第一个元素,所有它能使用DOM节点的方法。
  总之:使用JQuery时,需要注意包装集和DOM节点的区别,JQuery提供的方法都是包装集的方法,不能在DOM节点上使用JQuery方法,
同样,DOM节点的方法也不能在包装集上使用,而只能应用于DOM节点。当然除了方法还有属性(如innerHTML)。
同时我能也能将DOM节点包装成包装集:如我们经常要使用$(this),将节点包装成包装集然后使用JQuery的方法进行处理。