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 相关文章推荐
JavaScript中的排序算法代码
Feb 22 Javascript
js完美实现@提到好友特效(兼容各大浏览器)
Mar 16 Javascript
javascript检查浏览器是否已经启用XX功能
Jul 10 Javascript
全面解析node 表单的图片上传
Nov 21 Javascript
利用node.js本地搭建HTTP服务器
Apr 19 Javascript
Validform验证时可以为空否则按照指定格式验证
Oct 20 Javascript
Vue Router去掉url中默认的锚点#
Aug 01 Javascript
jQuery AJAX 方法success()后台传来的4种数据详解
Aug 08 jQuery
JQuery特殊效果和链式调用操作示例
May 13 jQuery
atom-design(Vue.js移动端组件库)手势组件使用教程
May 16 Javascript
浅谈vue中document.getElementById()拿到的是原值的问题
Jul 26 Javascript
Vue+Element ui 根据后台返回数据设置动态表头操作
Sep 21 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 Calender(日历)代码分享
2014/01/03 PHP
win平台安装配置Nginx+php+mysql 环境
2016/01/12 PHP
如何批量清理系统临时文件(语言:C#、 C/C++、 php 、python 、java )
2016/02/01 PHP
thinkPHP3.1验证码的简单实现方法
2016/04/22 PHP
php连接MSsql server的五种方法总结
2018/03/04 PHP
由浅到深了解JavaScript类
2006/09/08 Javascript
Javascript中call与apply的学习笔记
2014/09/22 Javascript
两种方法基于jQuery实现IE浏览器兼容placeholder效果
2014/10/14 Javascript
JS实现随页面滚动显示/隐藏窗口固定位置元素
2016/02/26 Javascript
非常酷炫的Bootstrap图片轮播动画
2016/05/27 Javascript
JS实现的几个常用算法
2016/11/12 Javascript
vue + socket.io实现一个简易聊天室示例代码
2017/03/06 Javascript
AngularJS使用ui-route实现多层嵌套路由的示例
2018/01/10 Javascript
vue中img src 动态加载本地json的图片路径写法
2019/04/25 Javascript
Vue 中使用富文本编译器wangEditor3的方法
2019/09/26 Javascript
vue中axios的二次封装实例讲解
2019/10/14 Javascript
微信小程序中的列表切换功能实例代码详解
2020/06/09 Javascript
[04:11]2014DOTA2国际邀请赛 CIS遗憾出局梦想不灭
2014/07/09 DOTA
Python 创建子进程模块subprocess详解
2015/04/08 Python
python获取当前用户的主目录路径方法(推荐)
2017/01/12 Python
使用Python中的tkinter模块作图的方法
2017/02/07 Python
深入理解python中的select模块
2017/04/23 Python
利用TensorFlow训练简单的二分类神经网络模型的方法
2018/03/05 Python
Tensorflow实现卷积神经网络的详细代码
2018/05/24 Python
解决Ubuntu pip 安装 mysql-python包出错的问题
2018/06/11 Python
在Python中实现字典反转案例
2020/12/05 Python
美国药妆网站:EDCskincare.com(防晒、痤疮、抗衰老等)
2017/04/28 全球购物
泰国综合购物网站:Lazada泰国
2018/04/09 全球购物
Travelstart沙特阿拉伯:廉价航班、豪华酒店和实惠的汽车租赁优惠
2019/04/06 全球购物
.NET面试10题
2014/02/24 面试题
Weblogic和WebSphere不同特点
2012/05/09 面试题
办公设备采购方案
2014/03/16 职场文书
实习指导老师评语
2014/04/26 职场文书
2015年党员承诺书
2015/01/21 职场文书
2016大学生国家助学贷款承诺书
2016/03/25 职场文书
分位数回归模型quantile regeression应用详解及示例教程
2021/11/02 Python