jquery选择器需要注意的问题

我们先来看段代码,很简单,如下

代码如下:

<div id="div1">
    <span>111</span>
    <span>222</span>
    <span>333</span>
    <button id="button1">clear</button>
</div>

代码如下:

$(function() {
     $("#button1").click(function() {
         $("#div1 span").html("aaa");
     });
 });

$("#div1 span")获得三个对象的数组

1.如果执行 $("#div1 span").html("aaa"),则数组内的所有对象都会改变.如下图

2.如果执行$("#div1 span").html(),只取值的话,则只会取数组第一个对象的值

所以如果选择器获得是一个数组,要对数组每个元素都进行操作时,最好用each().

另外还有些注意事项

选择器中含有特殊符号的注意事项选择器中含有“.”、“#”、“(”或“]”等特殊字符根据W3C的规定,属性值中是不能含有这些特殊字符的,但在实际项目中偶尔会遇到表达式中含有“#”和“.”等特殊字符,如果按照普通的方式去处理出来的话就会出错。

解决此类错误的方法是使用转义符转义。
<div id="id#b">bb</div>
<div id="id[1]">cc</div>

不能这样写:
$('#id#b');  $('#id[1]');
应该使用转义符号:
$('#id\\#b');       //转义特殊字符“#”
$('#id\\[1\\]');    //转义特殊字符“[ ]”

(0)

相关推荐

  • jQuery中addClass()方法用法实例

    本文实例讲述了jQuery中addClass()方法用法.分享给大家供大家参考.具体分析如下: 此方法向匹配元素添加一个或多个类. 此方法有多个语法形式. 语法结构一: 为匹配元素添加指定的类名.如果要一次性添加多个类名,它们之间要用空格分隔. 复制代码 代码如下: $(selector).addClass(class) 参数列表: 参数 描述 class 定义被添加类的名称 实例代码: 复制代码 代码如下: <!DOCTYPE html> <html> <head>

  • 常见的jQuery选择器汇总

    基本元素选择器 复制代码 代码如下: $("p") $("p.ii")选取所有class=ii的 p元素 $("p#demo")选取id=demo的第一个p元素 分层选择器 复制代码 代码如下: $("div input")div 下的所有input $("div>input") 基本条件选择器 复制代码 代码如下: $("p:first") $("p:last"

  • 使用JS实现jQuery的addClass, removeClass, hasClass函数功能

    废话不多说,直接上代码 复制代码 代码如下: function addClass(obj, cls){     var obj_class = obj.className,//获取 class 内容.     blank = (obj_class != '') ? ' ' : '';//判断获取到的 class 是否为空, 如果不为空在前面加个'空格'.     added = obj_class + blank + cls;//组合原来的 class 和需要添加的 class.     obj

  • jQuery中复合属性选择器用法实例

    本文实例讲述了jQuery中复合属性选择器用法.分享给大家供大家参考.具体分析如下: 此选择器能够匹配同时满足多个属性条件的元素. 语法结构: 复制代码 代码如下: [selector1][selector2][selectorN] 参数列表: 参数 描述 selector1 属性选择器. selector2 另一个属性选择器,用以进一步缩小范围. selectorN 任意多个属性选择器,也是用来缩小范围. 实例代码: 复制代码 代码如下: <!DOCTYPE html> <html&g

  • jQuery中prop()方法用法实例

    本文实例讲述了jQuery中prop()方法用法.分享给大家供大家参考.具体分析如下: 此方法可以获取或者设置匹配元素的属性值. 根据方法参数的不同,作用也有所不同. 语法结构一: 当参数为属性名称时,此方法能够匹配元素集合中,第一个匹配元素指定属性名称的属性值. 复制代码 代码如下: $("selector").prop(name) 参数列表: 参数 描述 name 定义要获取其值的属性名称. 实例代码: 实例一: 复制代码 代码如下: <!DOCTYPE html> &

  • jQuery中removeProp()方法用法实例

    本文实例讲述了jQuery中removeProp()方法用法.分享给大家供大家参考.具体分析如下: 此方法可以删除由prop()方法设置的属性. 语法: 复制代码 代码如下: $("selector").removeProp(name) 参数列表: 参数 描述 name 定义要要删除的属性名称. 实例: 实例一: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

  • jQuery中attr()方法用法实例

    本文实例讲述了jQuery中attr()方法用法.分享给大家供大家参考.具体分析如下: 此方法设置或返回匹配元素的属性值. attr()方法根据参数的不同,功能也不同. 语法结构一: 获取第一个匹配元素指定属性的属性值. 复制代码 代码如下: $(selector).attr(name) 参数列表: 参数 描述 name 定义要获取其值的属性名称. 实例代码: 复制代码 代码如下: <!DOCTYPE html> <html> <head> <meta chars

  • jQuery中removeAttr()方法用法实例

    本文实例讲述了jQuery中removeAttr()方法用法.分享给大家供大家参考.具体分析如下: 此方法从匹配元素中移除相应的属性. 语法结构: 复制代码 代码如下: $(selector).removeAttr(attribute) 参数列表: 参数 描述 attribute 定义要从匹配元素中移除的属性 实例代码: 复制代码 代码如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"

  • jQuery中removeClass()方法用法实例

    本文实例讲述了jQuery中removeClass()方法用法.分享给大家供大家参考.具体分析如下: 此方法从匹配元素删除一个或多个类. 根据方法参数的不同,有以下几种语法结构. 语法结构一: 方法没有参数.把匹配元素所有的类都移除. 复制代码 代码如下: $(selector).removeClass() 实例代码: 代码可以将div的所有css类删除. 复制代码 代码如下: <!DOCTYPE HTML> <html> <head> <meta http-eq

  • jQuery选择器全集详解

    选择器是jQuery最基础的东西,本文中列举的选择器基本上囊括了所有的jQuery选择器,也许各位通过这篇文章能够加深对jQuery选择器 的理解,它们本身用法就非常简单,我更希望的是它能够提升个人编写jQuery代码的效率.本文配合截图.代码和简单的概括对所有jQuery选择器进行 了介绍,也列举出了一些需要注意和区分的地方. 一.基本选择器 1. id选择器(指定id元素) 将id="one"的元素背景色设置为黑色.(id选择器返单个元素) $(document).ready(fu

  • jQuery选择器源码解读(四):tokenize方法的Expr.preFilter

    Expr.preFilter是tokenize方法中对ATTR.CHILD.PSEUDO三种选择器进行预处理的方法.具体如下: Expr.preFilter : { "ATTR" : function(match) { /* * 完成如下任务: * 1.属性名称解码 * 2.属性值解码 * 3.若判断符为~=,则在属性值两边加上空格 * 4.返回最终的mtach对象 * * match[1]表示属性名称, * match[1].replace(runescape, funescape)

  • JQuery 选择器、过滤器介绍

    今日的学习再结合昨天的JavaScriptDOM的内容,让我对此十分清晰.JQuery原则:"write less, do more.",这句话已充分说明它对简化使用JavaScriptDOM编程的功力! 每位老师都有自己的教学方式,可能根据教授的内容的不同教学方式也有轻微的变化.老佟是一位非常有经验的软件教师,之前他在大连的软件公司做培训.经过多年的总结,他已经有自己一套成熟的教学方式.这个方式让我十分喜欢!至于是什么方式,你自己来体验吧!哈哈~~ 从学习JavaWEB.Struts

  • JQuery选择器、过滤器大整理

    经过一晚上的查找整理,终于整理出一套应该算最全面的JQuery选择过滤器的方法了.所有代码均经过测试. 首先HTML代码 复制代码 代码如下: HTML Code <html> <head> <script type="text/javascript" src="JQuery/jquery-1.5.1.js"></script> </head> <body> <form name=&quo

  • jquery选择器简述

    jQuery选择器使得获得页面元素变得更加容易.更加灵活,从而大大减轻了开发人员的压力.如同盖楼一样,没有砖瓦,就盖不起楼房,得不到元素谈何其他各种操作呢?可见,jQuery选择器的重要性. jquery选择器大方向可以分为这样: 下面我们先来看看基本选择器总的CSS选择器: 1.标签选择器: $("element") 其中,参数element,表示待查找的HTML标记名,如$("div"),标签选择器获取元素的方式是高效的,因为它继承自javascript中的ge

  • jquery选择器大全 全面详解jquery选择器

    选择器并没有一个固定的定义,在某种程度上说,jQuery的选择器和样式表中的选择器十分相似.选择器具有如下特点:1.简化代码的编写2.隐式迭代3.无须判断对象是否存在其中"$"是选择器不可缺少的部分,在jQuery库中,$就是jQuery的一个简写形式,比如$("#foo")和jQuery("#foo")是等价的,$.ajax和jQuery.ajax是等价的.如果没有特别说明,可以把程序中的$符号都理解为jQuery的简写形式.现在我们正式进入j

  • JQuery 选择器、DOM节点操作练习实例

    一.练习一 1.需求效果分析: 2.代码示例: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <script s

  • jQuery选择器中的特殊符号处理方法

    一般情况下,在jQuery选择器中,我们很少会用到诸如"."."#"."("."["等特殊字符,因为根据W3C规定,HTML文档中属性的值是不能包含有这些个特殊字符的,但是在实际应用中,偶尔也会遇到表达式中含有"#"和"."等特殊字符 那么是如何处理这些个特殊字符的呢? HTML代码: <div id="id.a">aa</div> <d

  • jQuery选择器简明总结(含用法实例,一目了然)

    本文现在对所有已知的 jquery 选择器做一个总结,深刻而熟练的掌握这些选择器,对我们快速的写各种 jquery 效果大有帮助!下面就对 jquery 各种选择做一个罗列吧!由于 jquery 用法非常简单,这里就不再举各种例子加深理解了. 选择器 实例 选取 * $("#item *") 选择 id 属性为 item 下的所有元素 #id $("#lastname") id="lastname" 的元素 .class $(".int

  • jquery选择器排除某个DOM元素的方法(实例演示)

    jquery选择器众多,使用选取某个DOM的方法有很多种,如何在选取的某个元素集上面做一些排除呢?下面通过几个实例说明: 1.选择所有的img元素,排除class=phpernote的元素的个数: 复制代码 代码如下: $('img:not(.phpernote)').length();//或者$('img').not('.phpernote').length(); 2.获取id=phpernote下面所有没有class=com的li元素的个数 复制代码 代码如下: $('#phpernote

随机推荐