javascript 中select框触发事件过程的分析


Posted in Javascript onAugust 01, 2017

javascript 中select框触发事件过程的分析

我们书写了mousedown,mouseup,click,input,change,focus,blur,keydowm,keydown事件绑定到了select上面,模拟客户选择相关事件的触发流程:

最后发现,触发的过程基本上一样,如果没有选择或者选择的是当前显示的option的话,不会触发change事件,只有在选择不同的option时候才会触发change事件。下面是选择了不同的option后触发事件的截图:

javascript 中select框触发事件过程的分析

我们可以发现,做出改变了可以触发input事件和change事件,而如果没有改变或者下拉出现了直接点击 别的地方,则不会促发这两个事件:

javascript 中select框触发事件过程的分析

附上代码:

<!DOCTYPE html> 
<html lang="en"> 
<head> 
  <meta charset="UTF-8"> 
  <title>Title</title> 
</head> 
<body> 
<select name="" id="input"> 
  <option value="1">1</option> 
  <option value="">2</option> 
  <option value="">3</option> 
  <option value="">4</option> 
  <option value="">5</option> 
</select> 
</body> 
<script> 
  document.getElementById("input").addEventListener("focus",function () { 
    console.log("focus"); 
  }); 
 
  document.getElementById("input").addEventListener("mousedown",function () { 
    console.log("mousedown"); 
  }); 
 
  document.getElementById("input").addEventListener("mouseup",function () { 
    console.log("mouseup"); 
  }); 
 
  document.getElementById("input").addEventListener("input",function () { 
    console.log("input"); 
  }); 
 
  document.getElementById("input").addEventListener("change",function () { 
    console.log("change"); 
  }); 
 
  document.getElementById("input").addEventListener("blur",function () { 
    console.log("blur"); 
  }); 
 
  document.getElementById("input").addEventListener("click",function () { 
    console.log("click"); 
  }); 
 
  document.getElementById("input").addEventListener("keydown",function () { 
    console.log("keydown"); 
  }); 
 
  document.getElementById("input").addEventListener("keyup",function () { 
    console.log("keyup"); 
  }); 
 
  document.getElementById("input").addEventListener("select",function () { 
    console.log("select"); 
  }); 
 
 
</script> 
</html>

以上就是javascript 中select框触发事件过程的分析,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
JXTree对象,读取外部xml文件数据,生成树的函数
Apr 02 Javascript
简单的JS多重继承示例
Mar 13 Javascript
myEvent.js javascript跨浏览器事件框架
Oct 24 Javascript
查找页面中所有类为test的结点的方法
Mar 28 Javascript
jquery获取css的color值返回RGB的方法
Dec 18 Javascript
JavaScript实现简单Tip提示框效果
Apr 20 Javascript
angularjs实现文字上下无缝滚动特效代码
Sep 04 Javascript
在js中实现邮箱格式的验证方法(推荐)
Oct 24 Javascript
利用纯js + transition动画实现移动端web轮播图详解
Sep 10 Javascript
javascript function(函数类型)使用与注意事项小结
Jun 10 Javascript
解决layer 关闭当前弹窗 关闭遮罩层 input值获取不到的问题
Sep 25 Javascript
JavaScript对象字面量和构造函数原理与用法详解
Apr 18 Javascript
谈谈对vue响应式数据更新的误解
Aug 01 #Javascript
详解jquery选择器的原理
Aug 01 #jQuery
浅谈node中的exports与module.exports的关系
Aug 01 #Javascript
Vue2.0 组件传值通讯的示例代码
Aug 01 #Javascript
谈谈VUE种methods watch和compute的区别和联系
Aug 01 #Javascript
Angular4学习笔记之实现绑定和分包
Aug 01 #Javascript
详解js静态资源文件请求的处理
Aug 01 #Javascript
You might like
一棵php的类树(支持无限分类)
2006/10/09 PHP
用ODBC的分页显示
2006/10/09 PHP
使用PHP提取视频网站页面中的FLASH地址的代码
2010/04/17 PHP
PHP+MySQL删除操作实例
2015/01/21 PHP
PHP学习笔记之session
2018/05/06 PHP
传递参数的标准方法(jQuery.ajax)
2008/11/19 Javascript
JavaScript Eval 函数使用
2010/03/23 Javascript
IE6下出现JavaScript未结束的字符串常量错误的解决方法
2010/11/21 Javascript
JS.getTextContent(element,preformatted)使用介绍
2013/09/21 Javascript
JS+CSS3实现超炫的散列画廊特效
2016/07/16 Javascript
轮播的简单实现方法
2016/07/28 Javascript
JS实现快速的导航下拉菜单动画效果附源码下载
2016/11/01 Javascript
使用Curl命令查看请求响应时间方法
2016/11/04 Javascript
JS正则子匹配实例分析
2016/12/22 Javascript
JavaScript中双向数据绑定详解
2017/05/03 Javascript
微信小程序图片自适应支持多图实例详解
2017/06/21 Javascript
ES6 javascript中class静态方法、属性与实例属性用法示例
2017/10/30 Javascript
React Native使用fetch实现图片上传的示例代码
2018/03/07 Javascript
详解Node.js读写中文内容文件操作
2018/10/10 Javascript
js中的reduce()函数讲解
2019/01/18 Javascript
Python数组定义方法
2016/04/13 Python
解决出现Incorrect integer value: '' for column 'id' at row 1的问题
2017/10/29 Python
关于反爬虫的一些简单总结
2017/12/13 Python
TensorFlow损失函数专题详解
2018/04/26 Python
python使用docx模块读写docx文件的方法与docx模块常用方法详解
2020/02/17 Python
python开发入门——列表生成式
2020/09/03 Python
python 基于opencv 实现一个鼠标绘图小程序
2020/12/11 Python
CSS3解决移动页面上点击链接触发色块的问题
2016/06/03 HTML / CSS
优秀员工自荐书
2013/12/19 职场文书
学生党支部先进事迹
2014/02/04 职场文书
人力资源总监工作说明
2014/03/03 职场文书
战略合作协议书范本
2014/04/18 职场文书
2014小学数学教研组工作总结
2014/12/06 职场文书
windows系统安装配置nginx环境
2022/06/28 Servers
Windows7下FTP搭建图文教程
2022/08/05 Servers
详解Anyscript开发指南绕过typescript类型检查
2022/09/23 Javascript