jQuery选择器中含有空格的使用示例及注意事项


Posted in Javascript onAugust 25, 2013

此文摘自《锋利的jQuery》,另外添加了一点自己的东西

选择器中的空格是不容忽视的,多一个空格或少一个空格也许得到的结果会截然不同的。下面来看一个例子。

先构建如下的HTML代码:

<div class="test"> 
<div style="display:none;">Jquery教程</div> 
<div style="display:none;">Jquery学习</div> 
<div style="display:none;">Jquery插件</div> 
<div class="test" style="display:none;">PHP学习</div> 
</div> 
<div class="test" style="display:none;">Jquery插件教程</div> 
<div class="test" style="display:none;">Jquery插件学习</div>

jQuery代码:
var $test_a = $(".test :hidden");//带空格的jQuery选择器 
var $test_b = $(".test:hidden");//不带空格的jQuery选择器 
var len_a = $test_a.length; 
var len_b = $test_b.length; 
alert("带空格的jQuery选择器选出的jQuery元素是:"+len_a+"个");//输出为4个 
alert("不带空格的jQuery选择器选出的jQuery元素是:"+len_b+"个");//输出为3个

之所以会出现不同的结果,这就是后代选择器和过滤选择器的不同了
var $test_a = $(".test :hidden");//带空格的jQuery选择器

上面这段代码是选取class为“test”的元素里面的隐藏元素。(后代选择器)
var $test_b = $(".test:hidden");//不带空格的jQuery选择器

这上面的代码则是选取隐藏的class为“test”的元素

注意:
有的选择器的用法,必须是空格,如果不带空格的话,那就取不到元素,比如:

$("select:selected").length;//不管任何时候,这个选择器都取不到元素,这个length必然是0 
$("select :selected");//这样才是正确的

有的选择器的用法,必须不带空格,如果带空格的话,那就取不到元素,比如:
$("input :checked").length;//不管任何时候,这个选择器都取不到元素,这个length必然是0 
$("input:checked");//这样才是正确的
Javascript 相关文章推荐
JS实现商品倒计时实现代码
May 03 Javascript
jquery的map与get方法详解
Nov 04 Javascript
jQuery使用$.ajax提交表单完整实例
Dec 11 Javascript
javascript鼠标右键菜单自定义效果
Dec 08 Javascript
ES6学习笔记之正则表达式和字符串正则方法分析
Apr 25 Javascript
vue实现长图垂直居上 vue实现短图垂直居中
Oct 18 Javascript
bootstrap响应式工具使用详解
Nov 29 Javascript
详解vue.js数据传递以及数据分发slot
Jan 20 Javascript
微信小程序本地存储实现每日签到、连续签到功能
Oct 09 Javascript
node.js域名解析实现方法详解
Nov 05 Javascript
ES6中Promise的使用方法实例总结
Feb 18 Javascript
解决iView Table组件宽度只变大不变小的问题
Nov 13 Javascript
JS操作JSON要领详细总结
Aug 25 #Javascript
JS 两个字符串时间的天数差计算
Aug 25 #Javascript
js中onload与onunload的使用示例
Aug 25 #Javascript
JQuery中对Select的option项的添加、删除、取值
Aug 25 #Javascript
JavaScript限定复选框的选择个数示例代码
Aug 25 #Javascript
jquery中加载图片自适应大小主要实现代码
Aug 23 #Javascript
jquery eval解析JSON中的注意点介绍
Aug 23 #Javascript
You might like
php数组中删除元素的实现代码
2012/06/22 PHP
Thinkphp中的volist标签用法简介
2014/06/18 PHP
php中的字符编码转换函数用法示例
2014/10/20 PHP
PHP实现腾讯与百度坐标转换
2017/08/05 PHP
php实现的PDO异常处理操作分析
2018/12/27 PHP
jQuery 行级解析读取XML文件(附源码)
2009/10/12 Javascript
js向上无缝滚动,网站公告效果 具体代码
2013/11/18 Javascript
js限制input标签中只能输入中文
2015/06/26 Javascript
javascript定时器取消定时器及优化方法
2017/07/08 Javascript
Angular 1.x个人使用的经验小结
2017/07/19 Javascript
clipboard在vue中的使用的方法示例
2018/10/19 Javascript
浅谈vue中resetFields()使用注意事项
2020/08/12 Javascript
python使用cStringIO实现临时内存文件访问的方法
2015/03/26 Python
Python编程之黑板上排列组合,你舍得解开吗
2017/10/30 Python
Python实现的KMeans聚类算法实例分析
2018/12/29 Python
使用Python实现企业微信的自动打卡功能
2019/04/30 Python
python GUI实现小球满屏乱跑效果
2019/05/09 Python
python视频按帧截取图片工具
2019/07/23 Python
Python jieba库用法及实例解析
2019/11/04 Python
使用python的turtle绘画滑稽脸实例
2019/11/21 Python
Python基于内置库pytesseract实现图片验证码识别功能
2020/02/24 Python
python+opencv实现移动侦测(帧差法)
2020/03/20 Python
如何让PyQt5中QWebEngineView与JavaScript交互
2020/10/21 Python
Selenium+BeautifulSoup+json获取Script标签内的json数据
2020/12/07 Python
Html5游戏开发之乒乓Ping Pong游戏示例(二)
2013/01/21 HTML / CSS
Hotels.com拉丁美洲:从豪华酒店到经济型酒店的预定优惠和折扣
2019/12/09 全球购物
Windows和Linux动态库应用异同
2016/04/17 面试题
方正Java笔试题
2014/07/03 面试题
《锄禾》教学反思
2014/04/08 职场文书
园林技术专业求职信
2014/07/28 职场文书
农村文化建设标语
2014/10/07 职场文书
小学生作文批改评语
2014/12/25 职场文书
大学生个人简历自我评价
2015/03/11 职场文书
《雪地里的小画家》教学反思
2016/02/16 职场文书
《亲亲我的妈妈》观后感(3篇)
2019/09/26 职场文书
Redis6.0搭建集群Redis-cluster的方法
2021/05/08 Redis