JavaScript个人学习笔记 (七)

**事件监听机制(事件)**概念:某些组件被执行了某些操作后,触发了代码的执行。
事件:某些操作 如:单击,双击,键盘按下了,鼠标移动了
事件源(事件发生的源头):组件 如:按钮,文本输入框。。。
监听器:代码
注册监听:将事件,事件源,监听器结合在一起,当事件源上发生了某个事件,则触发了某个监听器代码

常见的事件:

1.点击事件:
	1.onclick:单击事件
	2.ondbclick:双击事件
2.焦点事件:
	1.onblur:失去焦点
		一般用于表单验证
	2.onfocus:元素获得焦点
3.加载事件:
	1.onload 一张页面或一幅图像完成加载
4.鼠标事件:
	1.onmousedown	鼠标按钮被按下。
		定义方法时,定义一个形参,接受event对象
		event对象的button属性可以获取鼠标那个键被点击了
	2.onmousemove	鼠标被移动。
	3.onmouseout	鼠标从某元素移开。
	4.onmouseover	鼠标移到某元素之上。
	5.onmouseup	    鼠标按键被松开。

5.键盘事件:
	1.onkeydown		某个键盘按键被按下。
	2.onkeypress	某个键盘按键被按下并松开。
	3.onkeyup		某个键盘按键被松开。
6.选择和改变
	1.onchange	域的内容被改变。
	2.onselect	文本被选中。
7.表单事件
	1.onsubmit	确认按钮被点击。
		可以阻止表单的提交
			方法返回false,则表单被阻止提交
	2.onreset	重置按钮被点击。
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        /*
        1.点击事件:
            1.onclick:单击事件
            2.ondbclick:双击事件
        2.焦点事件:
            1.onblur:失去焦点
            2.onfocus:元素获得焦点
        3.加载事件:
            1.onload 一张页面或一幅图像完成加载
        4.鼠标事件:
            1.onmousedown	鼠标按钮被按下。
            2.onmousemove	鼠标被移动。
            3.onmouseout	鼠标从某元素移开。
            4.onmouseover	鼠标移到某元素之上。
            5.onmouseup	    鼠标按键被松开。

        5.键盘事件:
            1.onkeydown		某个键盘按键被按下。
            2.onkeypress	某个键盘按键被按下并松开。
            3.onkeyup		某个键盘按键被松开。
        6.选择和改变
            1.onchange	域的内容被改变。
            2.onselect	文本被选中。
        7.表单事件
            1.onsubmit	确认按钮被点击。
            2.onreset	重置按钮被点击。
        */
        //1.失去焦点事件
        /*
        document.getElementById("username").οnblur=function(){
            alert("失去焦点");
        }//首先得获得焦点 才能失去焦点 获得一次失去一次
        */
        //document.getElementById("username").οnfοcus=function(){alert("记得你的眼睛将会亮着");}

        //2.加载完成事件onload   (比如说我们把script标签放在input前,这样上面设置函数就无法起效,因为按顺序加载,则函数找不到对应的标签)
        //window.onload()表明等窗口整体加载完成再执行function这个代码
        window.onload = function () {
            /*
            document.getElementById("username").οnblur=function(){
            alert("失去焦点");
            }
            */
            /*
            //3.绑定鼠标移到元素之上事件
            document.getElementById("username").οnmοuseοver=function(){
                alert("来了老弟");
            }
            */
            /*
             //4.绑定鼠标点击事件(左右键都可)
             document.getElementById("username").οnmοusedοwn=function(event){
                 //这个监听器的代码不是我们自己调用的,而是浏览器的引擎自动调用的,方法在调用时会传一个对象进来,利用一个参数接受这个对象,这个对象可以操作有关鼠标的属性,键盘同理
                 alert(event.button);
                //alert("鼠标点击了");
            }
            */

            /*
            //5.绑定键盘点击事件
            document.getElementById("username").οnkeydοwn=function(event){
                 //这个监听器的代码不是我们自己调用的,而是浏览器的引擎自动调用的,方法在调用时会传一个对象进来,利用一个参数接受这个对象,这个对象可以操作有关鼠标的属性,键盘同理
                 if(event.keyCode==13)//回车
                 {
                    alert("提交表单");
                 }
            }

            */

            /*
            //6.选择和改变
            document.getElementById("city").οnchange=function(event){
                 alert("the content has been changed!");
            }//onchange 常用于下拉列表
            
            document.getElementById("username").οnchange=function(event){
                 alert("the content has been changed!");
            }
            */
            /*
            //这种写法我只是定义,并没有调用是别人调用的,得到了flag,会拿flag去判断真假,如果是true 就可以正确提交 返回false就可以阻止提交
            document.getElementById("form").οnsubmit=function(){
                //校验用户名格式是否正确
                var flag=false;//不能只设置,还需要被使用
                return flag;//返回true 就可以正确提交 返回false就可以阻止提交
            }
            */
            
        }
        //onload后期使用较多,一般情况下,我们会等所有的页面加载完成了,才会触发执行js代码
        function checkform(){//这种写法是我自己定义自己调用
                return false;
            }
    </script>
</head>

<!--
οnclick= "checkform()这样的写法,在内部实际运行如下

function fun(){
    checkform();
    //虽然checkform是flase,但最后是否阻断运行是看fun()这个函数的返回值,checkform();的返回值不是最终的返回值
    return checkform();//这样写才保证我写的方法的返回值才是真正的返回值
}

-->
<body>
    <form action="#" id="form" οnsubmit= "return checkform();">
        <input name="username" id="username">
        <select id="city">
            <option>-----请选择-----</option>
            <option>北京</option>
            <option>上海</option>
            <option>西安</option>
            <option>乌鲁木齐</option>
        </select>
        <input type="submit" value="提交">
    </form>
</body>

</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值