第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

【九月打卡】第21天 BAT大牛帶你橫掃初級前端JavaScript面試(第二版)

標簽:
JavaScript

学习课程名称:BAT大牛带你横扫初级前端JavaScript面试(第二版)
章节名称:JS-Web-API-事件(新版)
讲师姓名:双越


课程内容:

  1. 事件绑定和事件冒泡
  2. 事件代理

事件模型:冒泡和捕获

事件绑定

// 通用事件绑定函数

function bindEvent(el,type,fn) {
    elem.addEventListener(type,fn)
}
 
const btn = document.getElementById('btn')
bindEvent(btn,'click',event => {
    console.log(event.target) // 获取触发的元素(本例:即btn)
    event.preventDefault() // 阻止默认行为
})

事件冒泡流程
基于DOM树形结构
事件会顺着触发元素向上冒泡
event.stopPropagation() // 阻止冒泡

冒泡的应用场景:事件代理

事件代理
代码简洁,提升网页性能

减少浏览器内存占用,但是不要滥用

通用的事件绑定函数(支持普通绑定和代理绑定)

function bindEvent(el,type,selector,fn) {
    if(fn == null) {
        fn = selector
        selector = null
    }
    el.addEventListener(type, e => {
        let target
        if(selector) {
            //需要事件代理
            target = e.target
            if(target.matches(selector)) {
                fn.call(target,e) //主要改变this的指向,使用方,可以用this.拿到对应的值
            }
        }else {
            //不需要代理
            // fn(e)
            fn.call(target,event)
        }
    })
}

图片描述

點擊查看更多內(nèi)容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優(yōu)惠券免費領(lǐng)

立即參與 放棄機會
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號

舉報

0/150
提交
取消