zoukankan      html  css  js  c++  java
  • javascript中定义事件的三种方式


    在javascript中,可以为某个元素指定事件,指定的方式有以下三种:
    1、在html中,使用onclick属性
    2、在javascript中,使用onclick属性
    3、在javascipt中,使用addEvenListener()方法

    三种方法的比较
    (1)在第二、三种方法中,可以向函数传入一个event对象,并读取其相应属性,而方法一不可以。
    (2)首选第二、三种,第一种不利于将内容与事件分离,也不能使用event对象的相关内容。

    一些语法细节
    (1)在第一种方法中,onclick大小写无关,但在第二种方法中,必须使用小写。因为HMTL对大小写不敏感,而JS则会区分大小写。
    (2)在第二、三种方法中,指定函数名时没有双引号,而第一种作为一个HTML属性,需要双引号。
    (3)第一种方法需要括号,第二、三种不需要。
    onclick="clickHandler()"
     document.getElementById("jsOnClick").onclick = clickHandler2; 
     document.getElementById("addEventListener").addEventListener("click", clickHandler2);
     
    完整代码如下:
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Even Deom</title>
    
    </head>
    <body>
     <button id="htmlOnClick" onclick="clickHandler()">htmlOnClick</button>
     <button id="jsOnClick">jsOnClick</button>
     <button id="addEventListener">addEventListener</button>
     
     <script defer>
     function clickHandler() {
      alert("onclick attribute in html");
     }
     function clickHandler2(e) {
      alert(e.target.innerHTML);
     }
     document.getElementById("jsOnClick").onclick = clickHandler2;
     document.getElementById("addEventListener").addEventListener("click",
       clickHandler2);
    </script>
    </body>
    </html>



    在javascript中,可以为某个元素指定事件,指定的方式有以下三种:
    1、在html中,使用onclick属性

    2、在javascript中,使用onclick属性
    (1)注意函数名没有双引号。

    3、在javascipt中,使用addEvenListener()方法

    三种方法的比较
    (1)在第二、三种方法中,可以向函数传入一个event对象,并读取其相应属性,而方法一不可以。

    一些语法细节
    (1)在第一种方法中,onclick大小写无关,但在第二种方法中,必须使用小写。因为HMTL对大小写不敏感,而JS则会区分大小写。
    (2)在第二、三种方法中,指定函数名时没有双引号,而第一种作为一个HTML属性,需要双引号。
    (3)第一种方法需要括号,第二、三种不需要。
    onclick="clickHandler()"
     document.getElementById("jsOnClick").onclick = clickHandler2; 
     document.getElementById("addEventListener").addEventListener("click", clickHandler2);
     
    完整代码如下:
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Even Deom</title>

    </head>
    <body>
     <button id="htmlOnClick" onclick="clickHandler()">htmlOnClick</button>
     <button id="jsOnClick">jsOnClick</button>
     <button id="addEventListener">addEventListener</button>
     
     <script defer>
     function clickHandler() {
      alert("onclick attribute in html");
     }
     function clickHandler2(e) {
      alert(e.target.innerHTML);
     }
     document.getElementById("jsOnClick").onclick = clickHandler2;
     document.getElementById("addEventListener").addEventListener("click",
       clickHandler2);
    </script>
    </body>
    </html>
  • 相关阅读:
    检查.net代码中占用高内存函数(翻译)
    DataTable添加行和列
    使用.NET中的Action及Func泛型委托
    基于Emgu cv的图像拼接(转)
    AForge学习笔记(列表)
    标准Dispose实现 (转)
    在WPF程序中使用摄像头兼谈如何使用AForge.NET控件(转)
    NBearV3中文教程总目录
    如何在我们项目中利用开源的图表(js chart)
    1、NameNode启动流程的初始化操作
  • 原文地址:https://www.cnblogs.com/eaglegeek/p/4557864.html
Copyright © 2011-2022 走看看