jQuery中DOM操作原则实例分析

 更新时间:2019年08月01日 11:05:39   作者:迎着冷眼与嘲笑  
这篇文章主要介绍了jQuery中DOM操作原则,结合实例形式分析了jQuery针对dom元素操作的四种常见原则,需要的朋友可以参考下

本文实例讲述了jQuery中DOM操作原则。分享给大家供大家参考,具体如下:

一丶Get and Set in One(读写一体) 原则

为了更加易于使用,jQuery提供了简洁的DOM操作API,其方法往往是读写一体的。也就是说,某个方法既可用于读取操作,也可用于设置操作。如果没有为其传入表示值的参数,则表示获取操作,将返回获取到的数据;如果为其传入了表示值的参数,则表示设置操作,它将设置DOM元素指定属性的值。

示例代码

// 没有传入value参数,返回第一个匹配元素的value元素
var $a = $("a");
//只会取第一个匹配的
var $color = a.css("color");
//// 传入了value参数,设置所有匹配元素的color样式为"red"
$a.css("color", "red");

二丶Get first Set all(读取第一个,写操作所有) 原则

jQuery对象几乎所有的DOM操作方法都遵守”Get first Set all”原则。简而言之,假设当前jQuery对象匹配多个元素,如果使用jQuery对象的方法来获取数据(“读”数据),则只会获取第一个匹配元素的数据;如果使用jQuery对象的方法来设置元素数据(“写”数据),则会对所有匹配元素都进行设置操作

示例代码

var $lis = $("ul li"); // 匹配ul元素的所有后代li元素
var $className = $lis.attr("class"); // 只获取第一个匹配的li元素的class属性
$lis.attr("class", "left"); // 将所有匹配的li元素的class属性设为"left"

三丶链式编程风格

jQuery对象的所有实例方法,在没有特殊的返回需求的情况下,一般都会返回该jQuery对象本身(或者其它jQuery对象),因此我们可以继续调用返回的jQuery对象上的方法

示例代码

$("div") // 返回一个匹配所有div元素的jQuery对象
.find("ul") // 返回匹配这些div元素中的所有后代ul元素的jQuery对象
.children() // 返回匹配这些ul元素中的所有子代元素的jQuery对象
.css("color", "red") // 为这些子代元素设置css样式"color: red,并返回当前对象本身
.hide(); // 隐藏这些子代元素,并返回当前对象本身

四丶智能DOM操作,静默容错

在JS原生DOM操作中,如果通过getElementById()getElementsByName()等方式获取不到对应的元素,那么将返回null,在null上访问属性或方法,将会抛出异常。

与此不同的是,jQuery在匹配不到对应元素时将返回一个空的jQuery对象,我们仍然可以调用jQuery对象的方法,而且并不会报错。因为jQuery会智能地处理这种情况。如果该方法用于获取数据,则返回nullundefined;如果该方法用于设置数据,则忽略设置操作,并返回该空对象本身;如果该方法用于筛选元素,则同样返回一个新的jQuery空对象

更多关于jQuery相关内容还可查看本站专题:《jQuery操作DOM节点方法总结》、《jQuery遍历算法与技巧总结》、《jQuery表格(table)操作技巧汇总》、《jQuery扩展技巧总结》、《jQuery常见经典特效汇总》、《jquery选择器用法总结》及《jQuery常用插件及用法总结

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

相关文章

  • jQuery渐变发光导航菜单的实例代码

    jQuery渐变发光导航菜单的实例代码

    今天介绍一个jQuery渐变发光效果的导航菜单,这是一个简单的通过jQuery控制opacity实现的导航菜单。
    2013-03-03
  • jquery图片放大功能简单实现

    jquery图片放大功能简单实现

    图片放大在某些例如商品细节放大图比较常见,本文写了一个图片放大的示例适合日常应付,有需求的朋友可以参考下
    2013-08-08
  • jquery鼠标悬停导航下划线滑出效果

    jquery鼠标悬停导航下划线滑出效果

    这篇文章主要为大家详细介绍了jquery鼠标悬停导航下划线滑出效果,菜单鼠标悬停出现下划线,向两边扩展的效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-09-09
  • jquery 中toggle的2种用法详解(推荐)

    jquery 中toggle的2种用法详解(推荐)

    下面小编就为大家带来一篇jquery 中toggle的2种用法详解(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-09-09
  • jQuery事件绑定方法学习总结(推荐)

    jQuery事件绑定方法学习总结(推荐)

    下面小编就为大家带来一篇jQuery事件绑定方法学习总结(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • jQuery中与toggleClass等价的程序段 以及未来学习的方向

    jQuery中与toggleClass等价的程序段 以及未来学习的方向

    昨天开始学jQuery,js是我前端设计技术的一块心病,一直没有找到很好的学习办法。最近突然开悟,可以学jQuery呀,这个东西比较好学。
    2010-03-03
  • JQuery打造省市下拉框联动效果

    JQuery打造省市下拉框联动效果

    考虑将需要动态刷新的内容自动拼接到前一个下拉框之后等等,用JQuery实现比较容易,代码以省市联动效果为例实现
    2014-05-05
  • jQuery插件FusionCharts绘制的3D饼状图效果实例【附demo源码下载】

    jQuery插件FusionCharts绘制的3D饼状图效果实例【附demo源码下载】

    这篇文章主要介绍了jQuery插件FusionCharts绘制的3D饼状图效果,结合完整实例形式分析了基于FusionCharts图形插件绘制饼状图的操作技巧,并附带demo源码供读者下载参考,需要的朋友可以参考下
    2017-03-03
  • jQuery中getJSON跨域原理的深入讲解

    jQuery中getJSON跨域原理的深入讲解

    这篇文章主要给大家介绍了关于jQuery中getJSON跨域原理的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • 最佳6款用于移动网站开发的jQuery 图片滑块插件小结

    最佳6款用于移动网站开发的jQuery 图片滑块插件小结

    随着智能手机的普及,越来越多的用户喜欢通过手机中浏览网页。今天这篇文章为大家推荐最佳6款用于移动应用的 jQuery 图片滑块插件,这些插件很好的处理了触屏事件,效果平滑,帮助你构建用户体验良好的移动网站
    2012-07-07

最新评论