jQuery基础学习2——DOM和jQuery对象
<body>
<h3>例子</h3>
<p title="选择你最喜欢的水果." >你最喜欢的水果是?</p>
<ul>
<li id="apple">苹果</li>
<li>橘子</li>
<li>菠萝</li>
</ul>
</body>
可以通过JavaScript中的getElementsByTagName或者getElementById来获取元素节点,这样得到的DOM元素就是DOM对象,DOM对象可以使用JavaScript中的方法,如下:
var domObj = document.getElementsByTagName("h3")[0]; // 获得Dom对象 var objHTML = domObj.innerHTML; // 使用JavaScript中的属性——innerHTML
jQuery对象就是通过jQuery包装DOM对象后产生的对象,jQuery对象是jQuery独有的,如果一个对象是jQuery对象,那么可以使用jQuery里的方法。
alert($('#apple').html());
这段代码等同于:
alert(document.getElementById('apple').innerHTML);
1.在jQuery对象中无法使用DOM对象的任何方法,例如$('#id').innerHTML和$('#id').checked之类的写法都是错误的,可以用$('#id').html()和$('#id').attr("checked")之类的jQuery方法来代替。
2.DOM对象也不能使用jQuery里的方法,例如document.getElementById('apple').html()也会报错,只能用document.getElementById('apple').innerHTML语句。
3.用#id作为选择符取得的是jQuery对象而并非document.getElementById('id')所得到的DOM对象,两者并不等价。
jQuery不能使用DOM中的方法,但如果jQuery对象所提供的方法不熟悉,或者jQuery没有封装想要的方法,不得不使用DOM对象的时候,有以下两种处理方法。
jQuery提供了两种方法将jQuery对象转换为DOM对象,即[index]和get(index)。
- jQuery对象是一个类似数组的对象,可以通过[index]的方法得到相应的DOM对象,jQuery代码如下:
var $cr = $("#cr"); //jQuery对象
var cr =$cr[0]; //DOM对象
alert(cr.checked) //检测这个checkbox是否被选中
- 另一种方法是jQuery本身提供的,通过get(index)方法得到相应的DOM对象,jQuery代码如下:
var $cr = $("#cr"); //jQuery对象
var cr =$cr.get(0); //DOM对象
alert(cr.checked) //检测这个checkbox是否被选中
对于一个DOM对象,只需要用$()把DOM对象包装起来,就可以获得一个jQuery对象了,方法为$(DOM对象),jQuery代码如下:
var cr = document.getElementById("cr"); //DOM对象
var $cr = $(cr); //jQuery对象
alert($cr.is(":checked")); //jQuery方式判断
is(":checked")是jQuery中的方法,判断jQuery对象是否被选中,返回boolean值。
jQuery基础学习2——DOM和jQuery对象的更多相关文章
- jquery基础学习之DOM篇(二)
在此之前请牢记,jquery 是一个合集对象!!!! 1.节点创建 js创建方法: 创建元素:document.createElement 设置属性:setAttribute 添加文本:innerHT ...
- JQuery基础学习总结
JQuery基础学习总结 简单总结下JQuery: 一:事件 1.change事件 <!DOCTYPE html> <html lang="en"> < ...
- 【总结整理】JQuery基础学习---DOM篇
前言: 先介绍下需要用到的浏览器提供的一些原生的方法(这里不处理低版本的IE兼容问题) 创建流程比较简单,大体如下: 创建节点(常见的:元素.属性和文本) 添加节点的一些属性 加入到文档中 流程中涉及 ...
- 【jQuery基础学习】00 序
作为一个从来没有认真学过jQuery的菜来讲,我所学的都是jQuery基础. 算是让自己从0开始系统学一遍吧.学习书籍为:<锋利的jQuery>. 虽然是个序,表示一下我是个菜,但还是来几 ...
- jQuery 基础学习笔记总结(一)
Jquery 学习笔记 总结 感想: 此前在做站点时用到过jquery相关,特别是Ajax相关技术.但是并没有系统的进行学习和了解Jquery的强大的功能,趁这几天跟着资料基本的了解下Jquery的特 ...
- Android+Jquery Mobile学习系列(2)-HTML5/Jquery Mobile基础
本章介绍两个关键字[HTML5]和[Jquery Mobile],简单说这两者的关系是:HTML5作为主体,Jquery Mobile在HTML5的基础上对其进行了优化.装饰. HTML5 HTML5 ...
- 【jQuery基础学习】08 编写自定义jQuery插件
目的:虽然jQuery各种各样的功能已经很完善了,但是我们还是要学会自己去编写插件.这样我们可以去封装一些项目中经常用到的专属的代码,以便后期维护和提高开发效率. jQuery插件的类型: 封装对象方 ...
- jQuery基础学习(一)—jQuery初识
一.jQuery概述 1.jQuery的优点 jQuery是一个优秀的JavaScript库,极大地简化了遍历HTML文档.操作DOM.处理事件.执行动画和开发Ajax的操作.它有以下几点优 ...
- 【总结整理】JQuery基础学习---动画
jQuery中隐藏元素的hide方法 让页面上的元素不可见,一般可以通过设置css的display为none属性.但是通过css直接修改是静态的布局,如果在代码执行的时候,一般是通过js控制元素的st ...
随机推荐
- 打开一个已经写好的Android studio工程的方法
- JVM参数配置
JVM参数配置 设置堆大小 -Xms 初始堆大小 -Xmx 最大堆大小 -Xmn 设置年轻代大小 设置每个线程堆栈大小 -Xss 设置每个线程的堆栈大小 设置年轻代大小 -XX:NewSize= -X ...
- tomcat部署两个相同的项目报错不能访问
需要在同一个tomcat上搭建一个项目的两个版本,都要能跑起来 直接复制两个项目部署,会出现两个错误: 1,webAppKey 冲突 2,tomcat启动会有内存溢出(OutOfMemoryErr ...
- Asp.Net连接Mysql报错Out of sync with server
Asp.Net连接Mysql报错Out of sync with server 原因:程序引用的MySql.Data.dll版本高于服务器版本 解决:下载一个低版本的MySql.Data.dll,项目 ...
- linux的HugePage与oracle amm关系
如果Oracle 是11g以后的版本,那么默认创建的实例会使用Automatic Memory Management (AMM)的特性,该特性与HugePage不兼容. 在设置HugePage之前需 ...
- acdream 1408 "Money, Money, Money" (水)
题意:给出一个自然数x,要求找两个自然数a和b,任意多个a和b的组合都不能等于x,且要可以组合成大于x的任何自然数.如果找不到就输出两个0.(输出任意一个满足条件的答案) 思路:x=偶数时,无法构成, ...
- 【C#学习笔记】退出程序
1.this.Close(); 只是关闭当前窗口,若不是主窗体的话,是无法退出程序的,另外若有托管线程(非主线程),也无法干净地退出: 2.Application.Exit(); 强制所有消息中 ...
- 解决Jsoup网页抓取过程中需要cookie的问题
最近在做城觅网的信息抓取,发现城觅网上海与北京的url是一样的.那怎样才确定信息的来源呢?折腾了半天,才发现城觅网是使用cookie的,如果你把网站的cookie禁用了,就无法在上海与北京之间切换了. ...
- MySQL基础之第11章 插入、更新与删除数据
11.1.插入数据 11.1.1.为表的所有字段插入数据 1.INSERT语句中不指定具体的字段名 insert into 表名 values (值1,值2…值n)2.INSERT语句 ...
- Zend Framework 入门(2)—多国语言支持
如果你的项目想要支持多语言版本,那么就需要用到 Zend_Translate.Zend_Translate 的详细文档在这里,不过如果想偷懒的话,也很简单,在View Helpers 文档中介绍了如何 ...