JavaScript 事件是由访问Web 页面的用户引发的一系列操做,例如:用户点击。当用户浏览器
- //在HTML 中把事件处理函数做为属性执行JS 代码
- <input type="button" value="按钮" onclick="alert('Lee');" /> //注意单双引号
- //在HTML 中把事件处理函数做为属性执行JS 函数
- <input type="button" value="按钮" onclick="box();" /> //执行JS 的函数
PS:函数不得放到window.onload 里面,这样就看不见了。服务器
三.脚本模型
因为内联模型违反了HTML 与JavaScript 代码层次分离的原则。为了解决这个问题,我
们能够在JavaScript 中处理事件。这种处理方式就是脚本模型。框架
- var input = document.getElementsByTagName('input')[0]; //获得input 对象
- input.onclick = function () { //匿名函数执行
- alert('Lee');
- };
PS:经过匿名函数,能够直接触发对应的代码。也能够经过指定的函数名赋值的方式
来执行函数(赋值的函数名不要跟着括号)。ide
- input.onclick = box; //把函数名赋值给事件处理函数
四.事件处理函数
JavaScript 能够处理的事件类型为:鼠标事件、键盘事件、HTML 事件。函数
PS:全部的事件处理函数都会都有两个部分组成,on + 事件名称,例如click 事件的事
件处理函数就是:onclick。在这里,咱们主要谈论脚本模型的方式来构建事件,违反分离原
则的内联模式,咱们忽略掉。spa
对于每个事件,它都有本身的触发范围和方式,若是超出了触发范围和方式,事件处
理将失效。指针
1.鼠标事件,页面全部元素均可触发
orm
- //click:当用户单击鼠标按钮或按下回车键时触发。
- input.onclick = function () {
- alert('Lee');
- };
- //dblclick:当用户双击主鼠标按钮时触发。
- input.ondblclick = function () {
- alert('Lee');
- };
- //mousedown:当用户按下了鼠标还未弹起时触发。
- input.onmousedown = function () {
- alert('Lee');
- };
- //mouseup:当用户释放鼠标按钮时触发。
- input.onmouseup = function () {
- alert('Lee');
- };
- //mouseover:当鼠标移到某个元素上方时触发。
- input.onmouseover = function () {
- alert('Lee');
- };
- //mouseout:当鼠标移出某个元素上方时触发。
- input.onmouseout = function () {
- alert('Lee');
- };
- //mousemove:当鼠标指针在元素上移动时触发。
- input.onmousemove = function () {
- alert('Lee');
- };
2.键盘事件对象
- //keydown:当用户按下键盘上任意键触发,若是按住不放,会重复触发。
- onkeydown = function () {
- alert('Lee');
- };
- //keypress:当用户按下键盘上的字符键触发,若是按住不放,会重复触发。
- onkeypress = function () {
- alert('Lee');
- };
- //keyup:当用户释放键盘上的键触发。
- onkeyup = function () {
- alert('Lee');
- };
3.HTML 事件blog
- //load:当页面彻底加载后在window 上面触发,或当框架集加载完毕后在框架集上触发。
- window.onload = function () {
- alert('Lee');
- };
- //unload:当页面彻底卸载后在window 上面触发,或当框架集卸载后在框架集上触发。
- window.onunload = function () {
- alert('Lee');
- };
- //select:当用户选择文本框(input 或textarea)中的一个或多个字符触发。
- input.onselect = function () {
- alert('Lee');
- };
- //change:当文本框(input 或textarea)内容改变且失去焦点后触发。
- input.onchange = function () {
- alert('Lee');
- };
- //focus:当页面或者元素得到焦点时在window 及相关元素上面触发。
- input.onfocus = function () {
- alert('Lee');
- };
- //blur:当页面或元素失去焦点时在window 及相关元素上触发。
- input.onblur = function () {
- alert('Lee');
- };
- //submit:当用户点击提交按钮在<form>元素上触发。
- form.onsubmit = function () {
- alert('Lee');
- };
- //reset:当用户点击重置按钮在<form>元素上触发。
- form.onreset= function () {
- alert('Lee');
- };
- //resize:当窗口或框架的大小变化时在window 或框架上触发。
- window.onresize = function () {
- alert('Lee');
- };
- //scroll:当用户滚动带滚动条的元素时触发。
- window.onscroll = function () {
- alert('Lee');
- };