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 相关文章推荐
js 走马灯简单实例
Nov 21 Javascript
jquery 删除字符串最后一个字符的方法解析
Feb 11 Javascript
JavaScript中的getTimezoneOffset()方法使用详解
Jun 10 Javascript
jQuery插件formValidator自定义函数扩展功能实例详解
Nov 25 Javascript
jquery实现瀑布流效果 jquery下拉加载新数据
Dec 12 Javascript
JavaScript中使用参数个数实现重载功能
Sep 01 Javascript
详解vue 组件之间使用eventbus传值
Oct 25 Javascript
Vue-Router2.X多种路由实现方式总结
Feb 09 Javascript
Vue-cli Eslint在vscode里代码自动格式化的方法
Feb 23 Javascript
JS检索下拉列表框中被选项目的索引号(selectedIndex)
Dec 17 Javascript
Node.js API详解之 V8模块用法实例分析
Jun 05 Javascript
Echarts如何重新渲染实例详解
May 30 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实现二叉树的深度优先与广度优先遍历方法
2015/09/28 PHP
php获得客户端浏览器名称及版本的方法(基于ECShop函数)
2015/12/23 PHP
PHP使用DOM和simplexml读取xml文档的方法示例
2017/02/08 PHP
Ajax+PHP实现的删除数据功能示例
2019/02/12 PHP
php curl简单采集图片生成base64编码(并附curl函数参数说明)
2019/02/15 PHP
JavaScript对象模型-执行模型
2008/04/28 Javascript
struts2+jquery+json实现异步加载数据(自写)
2013/06/24 Javascript
利用js实现在浏览器状态栏显示访问者在本页停留的时间
2013/12/29 Javascript
$("").click与onclick的区别示例介绍
2014/09/25 Javascript
javascript实现避免页面按钮重复提交
2015/01/08 Javascript
jquery 抽奖小程序实现代码
2016/10/12 Javascript
js 实现一些跨浏览器的事件方法详解及实例
2016/10/27 Javascript
AngularJS中transclude用法详解
2016/11/03 Javascript
javascript实现获取图片大小及图片等比缩放的方法
2016/11/24 Javascript
jquery封装插件时匿名函数形参和实参的写法解释
2017/02/14 Javascript
Vuejs 页面的区域化与组件封装的实现
2017/09/11 Javascript
vue 解除鼠标的监听事件的方法
2019/11/13 Javascript
vue 解决provide和inject响应的问题
2020/11/12 Javascript
[47:52]完美世界DOTA2联赛PWL S2 PXG vs InkIce 第二场 11.26
2020/11/30 DOTA
Python base64编码解码实例
2015/06/21 Python
使用Python导出Excel图表以及导出为图片的方法
2015/11/07 Python
Python3下错误AttributeError: ‘dict’ object has no attribute’iteritems‘的分析与解决
2017/07/06 Python
Python元字符的用法实例解析
2018/01/17 Python
浅谈Python实现2种文件复制的方法
2018/01/19 Python
Python中的单继承与多继承实例分析
2018/05/10 Python
python如何生成网页验证码
2018/07/28 Python
Python切片操作去除字符串首尾的空格
2019/04/22 Python
解决python有时候import不了当前的包问题
2019/08/28 Python
python批量处理文件或文件夹
2020/07/28 Python
python二进制读写及特殊码同步实现详解
2019/10/11 Python
pytorch 彩色图像转灰度图像实例
2020/01/13 Python
thinkphp5 路由分发原理
2021/03/18 PHP
Html5 FileReader实现即时上传图片功能实例代码
2014/09/01 HTML / CSS
美国在线面料商店:Online Fabric Store
2018/07/26 全球购物
美国庭院家具购物网站:AlphaMarts
2019/04/10 全球购物
Java里面如何创建一个内部类的实例
2015/01/19 面试题