jQuery初探 jQuery选取和操纵元素的特点

JavaScript选取元素

  先来看看不用jQuery的时候我们是怎么处理元素选取的. 

  JavaScript选取元素的时候,可以根据id获取元素,当id不存在的时候,结果为null,并且console会报脚本执行错误.

  所以一般的做法是先用一个if判断该元素存在.

  比如:

<body>
<a>click me</a>
<script type="text/javascript"> // document.getElementById("someId").style.color = "red";//if id does not exist,report error in console. if (document.getElementById("hello")) {//ensure it's neither null nor undefined.
document.getElementById("hello").style.color = "red";
}
</script> </body>

jQuery选取操纵元素

  jQuery获取元素用的是$()运算符,比如获取某个id的对象用:$(“#idValue”).

  不论该id的元素存在与否,都会返回一个jQuery对象(object).

  这一点和直接用JavaScript获取DOM对象是完全不一样的.

  一般情况下$()获取的是所有满足条件的元素,即得到的这个jQuery对象有一个属性length,表示元素的个数,可能为0,表示没有获取到元素.比如当要获取的目标id不存在时,该值为0.

  id选择器是一个比较特殊的选择器,它只获取满足指定id的单个元素.如果id有多个,只返回第一个元素.

  

  如果id不存在时,虽然可以获取jQuery对象,但是将jQuery对象转换为DOM对象(用[0]或者get(0)),将会得到一个undifined.

  之后对这个DOM对象的任何属性操作都会报错,因为undefined不存在任何属性.

//jQuery
alert($("#hello"));//object //method1: convert jQuery object to DOM object
alert($("#hello")[0]);//undefined
$("#hello")[0].style.color = "red";//report error here!

  既然转换成DOM元素不太好用,那么我们就放弃转换,直接操纵jQuery元素.

  比如:

$("#hello").css("color","red");

  这样,虽然对应id的元素还是不存在,样式修改也没有生效,但是页面不会报任何错误,因为jQuery会将其忽略掉.

  如果id存在,则该样式会生效.

  jQuery对象中的大多数方法同时支持读操作写操作.

  下面我们给链接加上我们想要的id.

<body>
<a id="hello">click me</a>
<script type="text/javascript">
//jQuery
alert($("#hello").length);//show DOM elements count.
$("#hello").css("color","red");//write action
alert($("#hello").css("color"));//read action
</script>
</body>

  这个例子中hello是一个存在的id,首先用jQuery对象的css()方法的写操作赋予它一个颜色值,后来用读操作读出这个颜色值,弹窗显示出来.

  jQuery中的大多数方法都是用同一个名字,同时支持相对应的读操作和写操作.

  一般读操作是一个参数,写操作是两个参数.

总结: jQuery语法

  jQuery 语法是为 HTML 元素的选取编制的,可以对元素执行某些操作.

  基础语法是:$(selector).action()

  $符号定义 jQuery.

  选择符(selector)“查询”和“查找” HTML 元素.

  jQuery 的 action() 执行对元素的读写操作.

  关于jQuery选择器的内容这里先不详细介绍.本文只用了其中的id选择器作示例.

参考资料

  圣思园张龙老师JavaWeb视频教程66.

  HTML参考手册:http://www.w3school.com.cn/tags/index.asp

  jQuery语法:http://www.w3school.com.cn/jquery/jquery_syntax.asp

jQuery初探 jQuery选取和操纵元素的特点的更多相关文章

  1. jQuery选取和操纵元素的特点

    jQuery选取和操纵元素的特点 JavaScript选取元素 先来看看不用jQuery的时候我们是怎么处理元素选取的. JavaScript选取元素的时候,可以根据id获取元素,当id不存在的时候, ...

  2. jquery slibings选取同级其他元素

    jquery选取同级其他元素可以使用slibings方法,end方法可以清除之前的链式操作,相当于重新开始. <script type="text/javascript"&g ...

  3. jQuery选择器和选取方法 http://www.cnblogs.com/MaxIE/p/4078869.html

    我们已经使用了带有简单Css选择器的jQuery选取函数:$().现在是时候深入了解jQuery选择器语法,以及一些提取和扩充选中元素集的方法了. 一.jQuery选择器 在CSS3选择器标淮草案定义 ...

  4. JQuery初探

    [TOC] jquery 通过jQuery,您可以选取(查询,query)HTML元素,并对它们执行"操作"(actions). jQuery 使用的语法是 XPath 与 CSS ...

  5. jQuery选择器和选取方法

        我们已经使用了带有简单Css选择器的jQuery选取函数:$().现在是时候深入了解jQuery选择器语法,以及一些提取和扩充选中元素集的方法了. 一.jQuery选择器 在CSS3选择器标淮 ...

  6. Jquery遍历之获取子级元素、同级元素和父级元素

    Jquery遍历之获取子级元素.同级元素和父级元素 Jquery的遍历,其实就当前位置的元素相对于其他元素的位置的关系进行查找或选取HTML元素.以某项选择开始,并沿着这条线进行移动,或向上(父级). ...

  7. jQuery选择器和选取方法.RP

    我们已经使用了带有简单Css选择器的jQuery选取函数:$().现在是时候深入了解jQuery选择器语法,以及一些提取和扩充选中元素集的方法了. 一.jQuery选择器 在CSS3选择器标淮草案定义 ...

  8. Jquery 系列(2) 选择元素

    Jquery基础学习 jQuery利用css选择符的能力,能够在DOM中快捷而轻松地获取元素. 主要内容如下: 介绍DOM树 如何通过CSS选择符在页中查找元素 扩展jQuery标准的CSS选择符 选 ...

  9. jQuery获取带点的id元素

    一般jQuery获取某个id为elem元素,只需用$('#elem')就行了,但是如果id中不小心包括了'.' ,那么我吗就会发现这时候jQuery就不能获取到这个元素了.但是使用dom原生的getE ...

随机推荐

  1. Util应用程序框架公共操作类(七):Lambda表达式公共操作类

    前一篇扩展了两个常用验证方法,本文将封装两个Lambda表达式操作,用来为下一篇的查询扩展服务. Lambda表达式是一种简洁的匿名函数语法,可以用它将方法作为委托参数传递.在Linq中,大量使用La ...

  2. Android APK签名

    一.为什么要签名? 开发Android的人这么多,完全有可能大家都把类名,包名起成了一个同样的名字,这时候如何区分?签名这时候就是起区分作用的. 由于开发商可能通过使用相同的Package Name来 ...

  3. 【JVM】JVM系列之Class文件(三)

    一.前言 随着我们学习的不断深入,我相信读者对class文件很感兴趣,class文件是用户编写程序与虚拟机之前的桥梁,程序通过编译形成class文件,class文件之后会载入虚拟机,被虚拟机执行,下面 ...

  4. 用大白话聊聊JavaSE -- 自定义注解入门

    注解在JavaSE中算是比较高级的一种用法了,为什么要学习注解,我想大概有以下几个原因: 1. 可以更深层次地学习Java,理解Java的思想. 2. 有了注解的基础,能够方便阅读各种框架的源码,比如 ...

  5. 五一干货来袭!开源Moon.Orm标准版发布!

    标准版源代码下载: 链接:http://pan.baidu.com/s/1i3xj0f7 因五一早过(现在中旬了),解压码获取请到: http://www.cnblogs.com/humble/p/3 ...

  6. Ionic2学习笔记(7):Input

    作者:Grey 原文地址: http://www.cnblogs.com/greyzeng/p/5554610.html           我们先来看一个简单的输入用户名和密码点击登录的界面:   ...

  7. roleManager与角色管理授权

    总览地址 https://msdn.microsoft.com/zh-cn/library/9ab2fxh0.aspx 其中基本概述是第一篇:了解角色管理 来自 <https://msdn.mi ...

  8. ul li设置横排,并除去li前的圆点

    效果预览:http://hovertree.com/texiao/css/ 如何用CSS制作横向菜单 让ul li横向排列及圆点处理 我们先建立一个无序列表,来建立菜单的结构.代码是: <ul& ...

  9. 异构SOA系统架构之Asp.net实现(兼容dubbo)

    我们公司技术部门情况比较复杂,分到多个集团,每个集团又可能分为几个部门,每个部门又可能分为多个小组,组织架构比较复杂,开发人员比较多. 使用的编程语言也有点复杂,主流语言有.net(C#).Java. ...

  10. C#中实现excel文件批量导入access数据表中

    一 .界面简单设计如下: 二 .代码如下: using System; using System.Collections.Generic; using System.ComponentModel; u ...