• js click 与 onclick 事件绑定,触发与解绑


    click 与 onclick

    1.onclick 事件会在对象被点击时发生。

    <input id="btn1" type="button" onclick="test();" />
    function test() {
        alert("我是行间事件");
    }

    当点击id="btn1"时,触发onclick事件

    2.onclick事件会在click事件之前执行

    <input id="btn2" type="button" onclick="test();" />
    var btn2 = document.getElementById('btn2');
    btn2.addEventListener('click', showMsg, false); //鼠标单击的时候调用showMes这个函数  
    function showMsg() {
        alert("事件监听");
    }

    当点击id="btn2"时,先执行onclick事件的方法test(),再执行click事件的showMsg()方法;

    js 绑定点击事件的方法

    方法一:把onclick绑定在标签上

    HTML元素行间事件(也可以叫HTMl事件处理程序),直接在html标签里添加事件。

    缺点:html和js代码紧密耦合

    <input id="btn1" type="button" onclick="test();" />

    方法二:onclick的js绑定办法

    //把一个函数赋值给一个事件处理程序属性。(这种方式也叫做Dom0级事件处理程序)
    var btn1 = document.getElementById('btn1');
    function abc() {
        alert('abc');
    }
    btn1.onclick = abc; //当点击的时候执行abc这个函数,等价于 btn1.onclick=function abc(){alert('abc');}
    //btn1.onclick = null; //去掉绑定的事件

     方法三:click的js绑定办法(js的话推荐这种)

    //通过“事件监听”的方式来绑定事件(也叫Dom2级事件处理程序)
    var btn2 = document.getElementById('btn2');
    btn2.addEventListener('click', showMsg, false); //鼠标单击的时候调用showMes这个函数  
    function showMsg() {
        alert("事件监听");
    }
    //btn2.removeEventListener('click', showMsg, false); //去除绑定

    js 触发点击事件

    除了手动点击外,js也可以触发点击事件

    1. .onclick()

    document.getElementById("btn2").onclick();

    这种只会触发onclick事件

    2. .click()

    document.getElementById("btn2").click();

    这种会先出发onclick事件,再触发click事件

    js  解绑点击事件的方法

    解绑onclick

    btn1.onclick = null//去掉绑定的事件

    解绑click

    btn2.removeEventListener('click', showMsg, false); //去除绑定

    参考文章:http://blog.csdn.net/u014205965/article/details/45651875

  • 相关阅读:
    [转载]数据库外键的使用
    [转载]我如何筛选简历与选择人员
    [转载]asp.net中使用Row_Number函数分页
    五一,给心情放个假酷狗电台桌面版
    win32建立弹出式菜单
    GetMessage用法错误导致程序不能退出
    win32在程序当中引用菜单
    WM_COMMAND和WM_KEYDOWN消息的wParam,lParam参数
    单链表的释放内存free(delete)的顺序
    win32 GetMenu()和GetSubMenu()
  • 原文地址:https://www.cnblogs.com/ooo0/p/7742214.html
Copyright © 2020-2023  润新知