event事件

事件方法

onclick        当用户点击某个对象时调用的事件句柄。
ondblclick     当用户双击某个对象时调用的事件句柄。

onfocus        元素获得焦点。               //练习:输入框
onblur         元素失去焦点。               应用场景:用于表单验证,用户离开某个输入框时,代表已经输入完了,我们可以对它进行验证.
onchange       域的内容被改变。             应用场景:通常用于表单元素,当元素内容被改变时触发.(三级联动)

onkeydown      某个键盘按键被按下。          应用场景: 当用户在最后一个输入框按下回车按键时,表单提交.
onkeypress     某个键盘按键被按下并松开。
onkeyup        某个键盘按键被松开。
onload         一张页面或一幅图像完成加载。
onmousedown    鼠标按钮被按下。
onmousemove    鼠标被移动。
onmouseout     鼠标从某元素移开。
onmouseover    鼠标移到某元素之上。
onmouseleave   鼠标从元素离开

onselect      文本被选中。
onsubmit      确认按钮被点击。

两种为元素附加事件属性的方式

<div onclick="alert(123)">点我呀</div>
<p id="abc">试一试!</p>

<script>
    var ele=document.getElementById("abc");
    ele.onclick=function(){
        alert("hi");
    };

</script>

ondblclick & onfocus & onblur

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<p ondblclick="alert(123)">ppppp</p>

<input class="keyword" type="text" onfocus="func1()" onblur="func2()" value="请输入用户名">
<input type="text">


<script>
    function func1() {
//        console.log(111)
        var ky=document.getElementsByClassName("keyword")[0];
        ky.value="";


    }
    function func2() {

        var ky=document.getElementsByClassName("keyword")[0];
        if (ky.value.trim().length==0){ //字符串去掉空格
            ky.value="请输入用户名";
        }
    }
</script>
</body>
</html>

onpress onkeydown

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

<input type="button" value="press" onkeydown="fun1(event)" onkeyup="fun2(event)" >
<!--<input type="button" value="press2" onkeyup="fun2(event)">-->

<script>
    function fun1(e) {
        console.log(456);
        alert(e.keyCode);//键盘按键对应的编码
    }
    function fun2() {
        console.log(123)
    }
</script>
</body>
</html>

onload方法

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script>
        function fun1() {

            var p=document.getElementById("id1")
            alert(p.nodeName);
        }
        
//        window.onload=function () {
//          var p=document.getElementById("id1")
//          alert(p.nodeName);
//        }

    </script>

</head>
<body onload="func1()"> //等同于上述 window.onload,HTML文件(或图片)加载完全后触发该方法

<p id="id1">hello p</p>

</body>
</html>

onmouse方法

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        div{
            height: 100px;
            background-color: #84a42b;
            width: 200px;
        }
    </style>
</head>
<body>

<div onmousedown="down()" onmousemove="move()" >div1</div>

<script>
    function down() {
        console.log("down"); //鼠标点击区域后
    }
    function move() {
    console.log("move"); //鼠标在该区域内移动
    }
    function out() {
        console.log("out"); //鼠标离开该区域后
    }
    function over() {
        console.log("over");//鼠标进入该区域后
    }
</script>


</body>
</html>

onsubmit提交

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

//onsubmit必须在form标签中
//<...onsubmit="return check()"> check()函数 return false
<form id="form" onsubmit="return check(event)">
     <input type="text" name="username">
     <input type="submit" value="submit">
</form>

<script>
    
    function check(event) {
        alert("验证失败!");
        //return false;
        event.preventDefault(); //阻止事件提交
    }
//第二种:
    var Form=document.getElementById("form");
    Form.onsubmit=function (event) {
        alert(123);
        return false;
         //  event.preventDefault();
    };

</script>
</body>
</html>
View Code

事件绑定的两种方式

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
//事件绑定方式一
<div id="div1" onclick="func1()">hello duv
    <p class="ppp">hello p</p>
</div>

<script>
    //事件绑定方式二
    var obj=document.getElementsByClassName("ppp")[0];
    obj.onclick=function () {
        alert(123);
    }

    function func1(){
        alert("func1")
    }
    
</script>

</body>
</html>
View Code

 阻止事件向下一级传递

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        #div1{
            width: 300px;
            height: 200px;
            background-color: #84a42b;
        }
        #div2{
            height: 100px;
            width: 100px;
            background-color: rebeccapurple;
        }
    </style>
</head>
<body>


<div id="div1" onclick="alert('div1')">
    <div id="div2" onclick="func1(event)"></div>
</div>

<script>
    function func1(e) {
        alert('div2');
        e.stopPropagation();//阻止事件向下一级传递
    }
</script>

</body>
</html>
View Code

 

原文地址:https://www.cnblogs.com/jiefangzhe/p/8179866.html