js有关事件驱动

 

事件驱动
 
            /*
                什么是事件?
                1、事件发生了
                2、我要对这个事件做对应的处理。
 
             */
            
            /*
                通过  事件绑定  给某一个事件绑定具体的处理事件的行为/函数。
 
                内联模式       事件绑定写在行间
 
                外联模式/脚本模式    规矩语法规范,尽量将css、html和js分开去写。
             */
 
 
 
内联模式:
 
 
 
js
 
【注】内联模式下js代码不要写在window.onload = function(){   }函数里,这样事件就不会发生,会报错
示例;
 
 
外联模式(脚本模式)事件绑定格式
node(要绑定的节点).on+ 事件类型 = function(){ 
 
}
 
 
绑定示例:
外联模式(脚本模式)
 
 
 
-----------------------------------------------------
 
 
事件类型:
  1. 鼠标事件类型  2. 键盘事件类型 3.HTML事件类型
 
1.鼠标事件类型
 
                鼠标事件类型(可以添加任何节点上)
                    click     点击
                    dblclick  双击
                    mousedown 按下
                    mouseup   抬起
 
                    mouseover 移入
                    mouseout  移出
 
                    mousemove 鼠标移动,只要被添加事件的元素上移动,就不停的去调用这个函数。
 
代码示例:
 
 
<script>
 
    window.onload = function(){
 
//双击
    var oBtn = document.getElementById('btn1');
        oBtn.ondblclick = function(){
        alert('双击');
    }
 
    //鼠标按下
    var oDiv = document.getElementById('div1');
    oDiv.onmousedown = function(){
        this.style.backgroundColor = "blue";
    //鼠标按下背景变蓝色 }
    // 鼠标抬起
        oDiv.onmouseup = function(){
        this.style.backgroundColor = "orange";
    //鼠标按下背景变橙色 }
    // 鼠标移入
        oDiv.onmouseover = function(){
        this.innerHTML = "移入";
    }
 
    //鼠标移出
        oDiv.onmouseout = function(){
        this.innerHTML = "移出";
    }
 
    //鼠标移动
    var i = 0;
    oDiv.onmousemove = function(){
        this.innerHTML = i++;
    }
}
</script>
</head>
<body>
<button id = 'btn1'>按钮</button>
<div id = 'div1'></div>
</body>

 

 
 
 
 
2.键盘事件类型
 
一般添加给输入框标签、一般添加为 window对象。
 
            /*
                键盘事件(输入框标签、window)
                1、输入
                2、快捷键
 
                keydown  键盘按下  如果你按下以后不松手,会连续触发
                keyup    键盘抬起
 
                keypress 键盘按下  只支持字符键按下(回车、TAB键、空格也属于字符键),功能键                                            (shift/ctrl等)是无效的。
             */
 
代码示例:
        <title>Document</title>
        <script>
             window.onload = function(){
                var i = 0;
                //键盘按下  只支持字符键按下,功能键是无效的。
                window.onkeypress = function(){
                    document.title = i++; //网页标题名+1
                }
 
                //按键按下
                /*window.onkeydown = function(){
                    document.title = i++;//网页标题名+1
                }
 
                //按键抬起
                window.onkeyup = function(){
                    document.title = "抬起"; //网页标题名字变成  抬起
                }*/
            }
        </script>
    </head>
    <body>
        
    </body>

 

 
上面代码中的代码 其中一种效果演示:
onkeypress演示
 
 
 
3.HTML事件类型
            HTML事件
                1、window事件
                    load   当页面加载完成以后去执行
                    unload 当页面解构的时候(IE兼容)
                    scroll 当页面滚动的时候,执行
                    resize 当页面窗口大小发生变化的时候
 
                2、表单事件
                常用
                    focus  获取焦点
                    blur   失去焦点
 
                不经常用
                    change 当文本框(input 或 textarea)内容改变且失去焦点后触发。
                    select 当用户选择文本框(input 或 textarea)中的一个或多个字符触发。
                【注】上述这些事件直接添加在文本框。
 
                【注】下述这两个事件必须添加在form这个标签上
                    submit  点击submit按钮触发
                    reset   点击reset按钮触发
 
a.window事件
 
onload示例: load   当页面加载完成以后去执行
                  
 
 
onunload 单页面解构的时候执行(页面加载后,再次点刷新的时候可以看到效果,关闭页面的时候也会触发,但是因为要关闭了所以看不到效果)  只兼容 IE;
 
window.onunload = function(){
 
}
 
onscroll  当页面滚动的时候,执行
                  
 
 
 resize 当页面窗口大小发生变化的时候
 
 
 
 
b.表单事件
 
                常用
                    focus  获取焦点
                    blur   失去焦点
 
                不经常用
                    change 当文本框(input 或 textarea)内容改变且失去焦点后触发。
                    select 当用户选择文本框(input 或 textarea)中的一个或多个字符触发。
                【注】上述这些事件直接添加在文本框。
 
                【注】下述这两个事件必须添加在form这个标签上
                    submit  点击submit按钮触发
                    reset   点击reset按钮触发
 
 
 
  focus  获取焦点
  blur   失去焦点
代码示例(常用)
 
 
--------------------------文本框上的--------------------
不常用:
                    change 当文本框(input 或 textarea)内容改变且失去焦点后触发。
                    select 当用户选择文本框(input 或 textarea)中的一个或多个字符触发。
 
onchange
 
 
onselect
 
 
--------------------------文本框上的end--------------------
 
-------------------加在form表单上----------------------------
 
                【注】下述这两个事件必须添加在form这个标签上
                    submit  点击submit按钮触发
                    reset   点击reset按钮触发
 
使用示例:
js
html
-------------------加在form表单上end----------------------------
posted @ 2018-09-05 11:30  暗恋桃埖源  阅读(520)  评论(0编辑  收藏  举报