jQuery对象与DOM对象转换方法详解


Posted in Javascript onMay 10, 2016

本文实例分析了jQuery对象与DOM对象的转换方法。分享给大家供大家参考,具体如下:

jQuery对象转换为dom对象

只有jQuery对象才能调用jQuery类库的各种函数,同样有些dom对象的属性和方法在jQuery上也是无法调用的,不过基本上jQuery类库提供的函数包含了所有的dom操作。有时尤其是在初学jQuery,无法记住jQuery的所有函数时,会有很长一段时间使用jQuery选择器配合原始的dom函数进行开发。所以两种对象的转化是很有必要的。

jQuery对象的索引保存的是dom对象,所以可以通过索引将经jQuery对象转化为dom对象(实际上是获取保存在jQuery对象中的dom对象)。

$("#myphoto")[0];

通过索引返回dom对象后,就可以使用各种dom对象的方法和属性,比如获取dom对象的src属性:

alert($("#myphoto")[0].src);

如果想要遍历jQuery对象中的每个元素,通常使用each()函数。

echo(callback);

Callback()是一个回调函数,此函数中的this也指向dom元素。

$("#myphoto").each(function(i){
     this,src="test"+i+".jpg";
});

对于懒人有一个小窍门,如果不想记忆在不同的jQuery函数中的this到底是jQuery对象还是this对象,可以使用"this"方法都转化成jQuery对象,因为即使一个对象已经是jQuery对象也不会出错。

Dom对象转化为jQuery对象

如果已经获得了一个dom对象,可以使用"jQuery(elements)"函数将其转化为jQuery对象:

var img=document.getElementById("myphoto");
jQuery(img).css("border","solid 2px #FF0000");

上面代码中img是使用dom获取到的dom对象。将其转化为jQuery对象后就可以使用jQuery对象的css()方法更改其样式。

可以使用"$"代替"jQuery",因为在jQuery的内部有如下实现:

jQuery=window.jQuery=window.$

"$"字符在JavaScript中可用做变量名,并且可以作为前缀出现。但是一些其他的类库或者是程序可能已经使用了"$"作为变量名。

jQuery(img).css("border","solid 2px #FF0000");
$(img). css("border","solid 2px #FF0000");

以上两条语句是等同的。

"jQuery(elements)"函数的elemients参数还可以是jQuery对象,虽然讲一个jQuery对象在次转化没有意义,这是为了当不确定一个对象的类型是jQuery对象还是dom对象时,可以再次调用此函数进行转化,这样可以保证此对象一定是jQuery对象。

希望本文所述对大家jquery程序设计有所帮助。

Javascript 相关文章推荐
在页面上点击任一链接时触发一个事件的代码
Apr 07 Javascript
jquery的键盘事件修改代码
Feb 24 Javascript
JavaScript高级程序设计(第3版)学习笔记10 再访js对象
Oct 11 Javascript
js 获取后台的字段 改变 checkbox的被选中的状态 代码
Jun 05 Javascript
js实现延迟加载的方法
Jun 24 Javascript
如何判断Javascript对象是否存在的简单实例
May 18 Javascript
JS提示:Uncaught SyntaxError: Unexpected token ILLEGAL错误的解决方法
Aug 19 Javascript
详解SPA中前端路由基本原理与实现方式
Sep 12 Javascript
微信小程序云开发 搭建一个管理小程序
May 17 Javascript
JavaScript中Dom操作实例详解
Jul 08 Javascript
vite+vue3.0+ts+element-plus快速搭建项目的实现
Jun 24 Vue.js
JS实现页面炫酷的时钟特效示例
Aug 14 Javascript
jQuery对象的链式操作用法分析
May 10 #Javascript
JS组件Bootstrap按钮组与下拉按钮详解
May 10 #Javascript
Bootstrap按钮下拉菜单组件详解
May 10 #Javascript
JavaScript编写页面半透明遮罩效果的简单示例
May 09 #Javascript
JavaScript编写点击查看大图的页面半透明遮罩层效果实例
May 09 #Javascript
使用CSS+JavaScript或纯js实现半透明遮罩效果的实例分享
May 09 #Javascript
Bootstrap模仿起筷首页效果
May 09 #Javascript
You might like
推荐php模板技术[转]
2007/01/04 PHP
php UBB 解析实现代码
2011/11/27 PHP
基于PHP选项与信息函数的使用详解
2013/05/10 PHP
PHP与Perl之间知识点区别整理
2019/03/19 PHP
一个可以随意添加多个序列的tag函数
2009/07/21 Javascript
jquery异步循环获取功能实现代码
2010/09/19 Javascript
基于JavaScript实现继承机制之构造函数+原型链混合方式的使用详解
2013/05/07 Javascript
javascript每日必学之基础入门
2016/02/16 Javascript
浅谈addEventListener和attachEvent的区别
2016/07/14 Javascript
Vue.js学习之过滤器详解
2017/01/22 Javascript
Vue实现一个返回顶部backToTop组件
2017/07/25 Javascript
简单谈谈js的数据类型
2017/09/25 Javascript
详解js的视频和音频采集
2018/08/09 Javascript
基于AngularJs select绑定数字类型的问题
2018/10/08 Javascript
js笔试题-接收get请求参数
2019/06/15 Javascript
vue+mock.js实现前后端分离
2019/07/24 Javascript
基于layPage插件实现两种分页方式浅析
2019/07/27 Javascript
javascript for循环性能测试示例
2019/08/07 Javascript
解决vue中axios设置超时(超过5分钟)没反应的问题
2020/09/04 Javascript
python3.3实现乘法表示例
2014/02/07 Python
python实现堆栈与队列的方法
2015/01/15 Python
Python中用于转换字母为小写的lower()方法使用简介
2015/05/19 Python
python结合API实现即时天气信息
2016/01/19 Python
解决Python2.7读写文件中的中文乱码问题
2018/04/12 Python
解决python中遇到字典里key值为None的情况,取不出来的问题
2018/10/17 Python
Python Selenium 之数据驱动测试的实现
2019/08/01 Python
TensorBoard 计算图的可视化实现
2020/02/15 Python
大学生个人总结的自我评价
2013/10/05 职场文书
募捐倡议书怎么写
2014/05/14 职场文书
团队队名口号大全
2014/06/06 职场文书
给客户的感谢信
2015/01/21 职场文书
党员带头倡议书
2015/04/29 职场文书
运动会开幕式致辞
2015/07/29 职场文书
小学新课改心得体会
2016/01/22 职场文书
Python 游戏大作炫酷机甲闯关游戏爆肝数千行代码实现案例进阶
2021/10/16 Python
分析Python list操作为什么会错误
2021/11/17 Python