jQuery---链式编程
jQuery—链式编程
文章目录
- 一、链式编程
- 二、常用绑定事件函数的链式编程
- 三、on函数的链式编程
- 四、bind函数的链式编程
- 五、混合使用
- 六、总结
一、链式编程
在jQuery中,如果一直对同一个元素进行函数操作,那么可以使用
.函数操作名
,一直写下去。
二、常用绑定事件函数的链式编程
举例:
//这是普通的事件绑定$("button").click(function() {console.log("1")})$("button").mouseenter(function() {console.log("2")})$("button").mouseleave(function() {console.log("3")})//与上文功能相同的链式编程$("button").click(function() {console.log("1")}).mouseenter(function() {console.log("2")}).mouseleave(function() {console.log("3")})
实现链式编程的核心,是函数调用结束之后返回的
this
对象,指的是当前调用者。这里的$("button").click(function(){})
调用结束之后,返回this
对象,它相当于$("button")
,这样和后面的合在一起就实现了$("button").mouseenter(function() {})
的函数调用,以上就是链式编程实现的一般步骤。
三、on函数的链式编程
举例:
//普通写法$("#btn1").on("click",function(){console.log("点击事件")})$("#btn1").on("mouseenter",function(){ //注意这里的on函数的链式编程console.log("鼠标聚焦事件")})$("#btn1").on("mouseleave",function(){ //注意这里的on函数的链式编程console.log("鼠标失焦事件")})//链式编程$("#btn1").on("click",function(){console.log("点击事件")}).on("mouseenter",function(){ //注意这里的on函数的链式编程console.log("鼠标聚焦事件")}).on("mouseleave",function(){ //注意这里的on函数的链式编程console.log("鼠标失焦事件")})
这里的on函数链式编程,函数调用结束之后,会隐式返回this关键字,表示当前调用的对象,这里第一个on函数调用结束之后,返回的this关键字表示的就是
$("#btn1")
,所有之后再加上on函数是顺理成章的事情。
四、bind函数的链式编程
举例:
//普通写法$("button").bind({"click":function(){console.log("点击事件")}})$("button").bind({"mouseenter":function(){console.log("鼠标聚焦事件")}})$("button").bind({"mouseleave":function(){console.log("鼠标离焦事件")}})//链式编程$("button").bind({"click":function(){console.log("点击事件")},"mouseenter":function(){console.log("鼠标聚焦事件")},"mouseleave":function(){console.log("鼠标离焦事件")}})
这里的bind函数链式编程,是将多个参数同时放在bind函数中,这是因为每个参数是以字典的形式存储,有着相同的格式,所以才可以同时作为并列参数放在bind函数中,需要记住这样的格式。
五、混合使用
举例:
//混合使用$("button").bind({"click":function(){console.log("点击事件")}})$("button").bind({"mouseenter":function(){console.log("鼠标聚焦事件")}}).mouseleave(function(){console.log("混合使用的离焦事件")})
运行结果:
需要明白链式编程中各个函数的并列关系,这样在混合使用的时候,就知道到底是在哪里进行编写代码。
六、总结
链式编程在当前的代码编写过程中十分重要,本文只是针对jQuery中的绑定事件函数进行举例,实际在其他函数中使用的也是非常多的,需要我们平时多加注意和练习。
jQuery---链式编程相关推荐
- 009_jQuery链式编程
1. jQuery方法链接 1.1. 有一种名为链接(chaining)的技术, 允许我们在相同的元素上运行多条jQuery命令, 一条接着另一条. 1.2. 这样的话, 浏览器就不必多次查找相同的元 ...
- JavaScriptJQuery_jQuery链式编程
jQuery链式编程 在jquery中,链式编程指的是对同一个元素一直进行函数操作:链式编程是将多行代码合并成一行代码,每一个合并的方法返回的结果是元素对象才可以进行链式编程,语法为"元素对 ...
- jQuery中事件及常用事件总结、jQuery中常见效果、隐式迭代、链式编程、样式操作、动画队列、不同元素绑定同一个事件
jQuery事件: jQuery中的事件和javascript中的事件基本相似,不同的是jQuery中的事件处理函数写在事件后面的括号中,如: <script>$('input').cli ...
- jQuery 节流阀/链式编程 /插件
节流阀: keydown 事件缺点:当键盘一直处于按下时,事件会一直在触发. 解决: 节流阀, 当键盘按下时,如果没抬起, 阻止下一次事件触发 . 1.定义一个变量默认为true var ...
- JavaScript——jQuery AJAX链式编程(流式编程)DEMO
基本概念 链式编程:设计模式之一 DEMO doSubmit: function(){ return $.ajax({url: url,type: 'post',data: $("#fm&q ...
- 按键改变元素背景颜色 链式编程的原理 评分案例 each方法的使用
按键改变元素背景颜色 <!DOCTYPE html> <html lang="en"> <head><meta charset=" ...
- 验证用户输入的是不是中文名字 淘宝精品案例 元素样式设置的方式 链式编程
验证用户输入的是不是中文名字 <!DOCTYPE html> <html lang="en"> <head><meta charset=& ...
- Object-C 关于「链式编程」与「函数式编程」简单实践
第一次来「掘金」发文章~ 「函数式编程」:每个函数都有返回,函数作为第一类对象 「链式编程」:函数返回的对象继续进行函数,组成一串长链(函数式编程的体现?) 拿 jQuery 简单举个例子 var t ...
- 22.仿淘宝五角星评论(链式编程、隐式迭代)
试玩(淘宝案例在下面): 效果: <!DOCTYPE html> <html lang="en"> <head><meta charset ...
- java链式编程_Java链式编程学习
Java链式编程 在使用jquery时肯定对它的链式编程惊艳到,慢慢的其它语言这种编程模式也逐渐增多.其本身并不复杂,在调用方法时,方法最后返回对象本身,以达到链式编程的效果. 链式编程比较简单,只要 ...
最新文章
- python json模块有什么用_Python中json模块与jsonpath模块的区别是什么
- HarmonyOS之深入解析设备标识符的功能和使用
- python 使用jinjia2 生成文件的空格处理
- java添加信息_java – 向异常添加信息
- 软件工程课, 编程课 助教的工作介绍
- Documentation/x86/kernel-stacks
- javaweb实训第六天上午——JSONSpringMVC进阶
- 316. 去除重复字母
- shell判断字符串为空
- Matlab软件包及安装
- java计算机毕业设计网上书店进销存管理系统源程序+mysql+系统+lw文档+远程调试
- 玩转华为ENSP模拟器系列 | 合集
- 学计算机的学数学建模课吗,为什么数学建模与数学实验会进入大学课堂
- 数据结构——图——拓扑排序算法
- 三/五/七/九点二次平滑法
- python使用seek函数报错:io.UnsupportedOperation: can't do nonzero end-relative seeks
- webshell一句话
- 笔记本linux如何降低功耗,细说如何降低笔记本电脑功耗
- 计算机默认应用程序怎么取消,如何取消默认打开的QQ浏览器
- PHP优雅的输出数组
热门文章
- 房产门户企业织梦模板/DedeCMS房地产楼盘网站模板下载
- 技术从业者的未来(2)
- 【Scenario-Based Testing】ASAM最新会议精炼
- java.io.IOException: No such file or directory之linux权限问题
- 什么是人工神经网络控制,什么是人工神经网络?
- IPTV系统架构的分析与研究
- 串口助手测试NB-IoT模块与华为OceanConnect平台通信(BC35-G模块、非常详细)
- 哪个大学有计算机专业博士授权,哪些学校有计算机应用博士点
- 信息系统项目管理师-项目质量管理
- 小型、低成本、低功耗的一次性收音机。第1部分:发射机