zoukankan      html  css  js  c++  java
  • 事件代理

    js 对象的插入前后方法

    insertBefore()插入在前

    appendChild()在之后

    事件委托:

    利用事件冒泡作用:

    1减少代码。

    2其中Event对象提供了一个属性叫target,可以返回事件的目标节点,我们称为事件源,也就是说,target就可以表示为当前的事件操作的dom,但是不是真正操作dom,当然,这个是有兼容性的,标准浏览器用ev.target,IE浏览器用event.srcElement,此时只是获取了当前节点的位置,并不知道是什么节点名称,这里我们用nodeName来获取具体是什么标签名,这个返回的是一个大写的,我们需要转成小写再做比较(习惯问题)

    obj.addEventListener('click',function(ev){
    var event=ev||window.event
    // 获得目标节点的兼容写法
    var target=event.target||event.srcElement
    // console.log(target.getAttributeNode("id").nodeValue)
    // 属性节点
    // if(target.getAttributeNode("id").nodeValue=='select'){

    //alert('babi')
    // }

    简便写法:
    if(target.id=='select'){
        alert("babi")
    }

    这是事件冒泡;代码如下从内到外(没毛病) false 为事件冒泡,true事件捕获

    document.addEventListener("click",function(){
    console.log("QQ3")
    },false)
    body.addEventListener("click",function(){
    console.log("QQ2")
    },false)
    p.addEventListener("click",function(){
    console.log("QQ1")
    },false)

     

  • 相关阅读:
    JSTL标签库
    JavaScript中数组操作
    jquery . fancybox()
    jQuery ajax
    jquery学习笔记2
    codeforces_1066_B.Heaters
    codeforces_1065_D.three pieces_思维
    codeforces_B. Forgery
    codeforces_C. Sequence Transformation
    codeforces_D. Social Circles
  • 原文地址:https://www.cnblogs.com/aaaaap/p/10472987.html
Copyright © 2011-2022 走看看