js 基础之常用事件

js当中,事件是较为常用的内容,本篇文章来说一些常用的事件。

鼠标事件

下面是常用的鼠标事件

  • click 当用户按下并释放鼠标按键或其他方式“激活”元素时触发
  • contextmenu 可以取消的事件,当上下文菜单即将出现时触发。当前浏览器在鼠标右击时显示上下文菜单
  • dblclick 当用户双击鼠标时触发
  • mousedown 当用户按下鼠标按键时触发
  • mouseup 当用户释放鼠标按键时触发
  • mousemove 当用户移动鼠标时触发
  • mouseover 当鼠标进入元素时触发。relatedTarget(在IE中是fromElement)指的是鼠标来自的元素
  • mouseout 当鼠标离开元素时触发。relatedTarget(在IE中是toElement)指的是鼠标要去往的元素
  • mouseenter 类似mouseover,但不冒泡。IE将其引入,HTML5将其标准化,但尚未广泛实现
  • mouseleave 类似mouseout,但不冒泡。IE将其引入,HTML5将其标准化,但尚未广泛实现

键盘事件

下面是常见的键盘事件,主要用来描述键盘行为:

  • keydown
  • keypress
  • keyup

加载事件

很多人说到加载事件,总是会想到window.onload,但是实际上,这类事件是一大类事件,下面是常见的加载事件:

  • load 页面完全加载后会触发该事件
  • error 当加载失败后触发,所有可以触发load事件的元素,都可以触发该事件
  • abort 元素加载中止时,(如加载过程中按下ESC键,停止加载),触发该事件,常用于图片加载 (只有IE支持)
  • unload 与load事件对应的是unload事件,该事件在文档被完全卸载后触发。刷新页面时,也会触发该事件。chrome/firefox/safari浏览器会阻止alert等对话框,IE浏览器会阻止console.log()等控制台显示。
window.onunload = function(e){
//chrome报错,firefox静默失败,IE弹出666
alert(666);
}
// 或者
window.onunload = function(e){
//chrome和firefox控制台显示666,IE静默失败
console.log(666);
}
  • DOMContentLoaded 则在形成完整的DOM树之后就会触发,而不理会图像、javascript文件、CSS文件或其他资源是否下载完毕。(IE8不支持)
window.addEventListener('DOMContentLoaded',function(e){
console.log(1);
})

表单事件

下面是常用的表单事件

  • submit 表单提交时触发,绑定给form元素
  • reset 表单发生重置时触发,绑定为form元素
  • blur 失去焦点时触发
  • change 表单控制的内容发生改变时触发

其他事件

  • scroll 元素内部的内容滚动时触发
  • resize 窗口尺寸发生变化时触发

在后续的博文中会继续更新关于常用事件的具体使用。

如果想要具体了解js事件的更详细内容,可以关注https://developer.mozilla.org/zh-CN/docs/Web/Events。

JavaScript基础之常用事件的更多相关文章

  1. JavaScript基础—闭包,事件

    Js基础-闭包,事件 1:js中的闭包 概念:在一个函数内部又定义了一个函数,内部函数能访问到外部函数作用域范围内的变量,这时这个内部函数就叫做闭包,无论这个内部函数在哪里被调用都能访问到外部函数作用 ...

  2. javaScript入门之常用事件

    JS中的常用事件 onfocus/onblur:聚焦离焦事件,用于表单校验的时候比较合适. onclick/ondblclick:鼠标单击和双击事件 onkeydown/onkeypress:搜索引擎 ...

  3. javascript技巧及常用事件方法集合(全)

    事件源对象 event.srcElement.tagName event.srcElement.type 捕获释放 event.srcElement.setCapture();  event.srcE ...

  4. JavaScript 基础知识梳理——事件

    事件 1)事件是文档或浏览器窗口中发生的特定的交互瞬间. JavaScript和HTML之间的交互是通过事件实现的. 2)事件流——描述的是从页面中接受事件的顺序 IE——事件冒泡流 Netscape ...

  5. javascript基础六(事件对象)

    1.事件驱动     js控制页面的行为是由事件驱动的.          什么是事件?(怎么发生的)     事件就是js侦测到用户的操作或是页面上的一些行为       事件源(发生在谁身上)   ...

  6. JavaScript基础学习(八)—事件

    一.鼠标移动事件      onmouseover: 鼠标移到了上面.      onmousemove: 鼠标移动了.      onmouseout: 鼠标移走了. window.onload = ...

  7. JavaScript基础 -- js常用内置方法和对象

    JS中常用的内置函数如下: 1.eval(str):计算表达式的结果. 2.parseInt(str,n):将符串转换成整数数字形式(可指定几进制). 3.parseFloat(str):将字符串转换 ...

  8. JavaScript基础事件(6)

    day53 参考:https://www.cnblogs.com/liwenzhou/p/8011504.html#autoid-2-3-8 事件 HTML 4.0 的新特性之一是有能力使 HTML ...

  9. 前端(十二)—— JavaScript基础操作:if语句、for循环、while循环、for...in、for...of、异常处理、函数、事件、JS选择器、JS操作页面样式

    JavaScript基础操作 一.分支结构 1.if语句 if 基础语法 if (条件表达式) { 代码块; } // 当条件表达式结果为true,会执行代码块:反之不执行 // 条件表达式可以为普通 ...

随机推荐

  1. 为什么JAVA对象需要实现序列化?

    https://blog.csdn.net/yaomingyang/article/details/79321939 序列化是一种用来处理对象流的机制. 所谓对象流:就是将对象的内容进行流化.可以对流 ...

  2. es实战一:基本概念

    基本概念 可以对照数关系型据库来理解Elasticsearch的有关概念. Relational DB Elasticsearch Databases Indices Tables Types Row ...

  3. Acwing-164-可达性统计(拓扑排序, 位运算统计)

    链接: https://www.acwing.com/problem/content/166/ 题意: 给定一张N个点M条边的有向无环图,分别统计从每个点出发能够到达的点的数量. 思路: 先拓扑排序求 ...

  4. 携程apollo分布式配置中心

    原理 : apollo的部署 jdk 要求8以上 mysql 5.7以上 执行build.sh 这样就把configService,adminService 打包到对应的target下面 把这个放到l ...

  5. 51 Nod 1092 回文字符串

    1092 回文字符串  基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题  收藏  关注 回文串是指aba.abba.cccbccc.aaaa这种左右对称的字符串.每 ...

  6. HNOI2004 树的计数 | HNOI2008 明明的烦恼

    题目链接:戳我 prufer序列的问题. prufer序列和无根树是一一对应的.而且在树中度数为k的点,在prufer序列中的出现次数为\(k-1\)次. 根据有限制次数的可重复元素的排列计数公式,我 ...

  7. mac使用sublime text3打开当前文件夹的终端

    打开sublime text3,同时按住shift+command+p打开扩展列表, 选择Package Control: Install Pageage,回车. 在输入框输入: terminal,回 ...

  8. Zabbix 4.0.2试用(七):在Linux主机中安装zabbix agent并添加该主机(yum源安装)

    Zabbix 4.0.2试用(七):在Linux主机中安装zabbix agent并添加主机(yum源安装) 2018年12月20日, 上午6:42 之前介绍的是下载源安装包,编译安装的方式来安装ag ...

  9. Centos7下设置MySql自动启动

    原文链接:http://www.cnblogs.com/Sungeek/p/9687565.html 1.将服务文件拷贝到init.d下,并重命名为mysql cp /usr/local/mysql/ ...

  10. puppet自动化部署

    puppet自动化部署 puppet  实现运维自动化管理的软件. 官方网站: http://puppetlabs.com/    pupptet下载链接:http://downloads.puppe ...