亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > JS > 正文

原生js實現trigger方法示例代碼

2024-05-06 16:51:14
字體:
來源:轉載
供稿:網友

前言

事件綁定成功之后,事件的執行函數就如同待字閨中的小姑娘。除了由坐在電腦前的大叔們用鍵盤、鼠標等硬件行為觸發外,需要在代碼中直接調用又該如何實現?

首先需要將事件綁定至指定DOM節點上

// 在一個節點上綁定一個事件let test = document.createElement('div');test.id = 'test';test.innerHTML = '測試事件';document.body.appendChild(test);test.addEventListener('mousedown', function(){  console.log('hello jTool');}, false)

事件綁定成功之后,事件的執行函數就如同待字閨中的小姑娘。除了由坐在電腦前的大叔們用鍵盤、鼠標等硬件行為觸發外,需要在代碼中直接調用又該如何實現?在 jQuery 中的事件類中包含一個trigger方法, 我之前寫的類庫 jTool 中同樣也實現了該方法, 下面就以 jTool 的視角來說明下 trigger 如何實現。

綁定事件時使用 DOM 對象的 .addEventListener() 方法, 而實現 trigger 則是使用 DOM 對像的 .dispatchEvent() 方法。

.dispatchEvent() 需要以參數形式傳入被派發的事件對象, 該事件對象可以通過 javascript 的全局構造函數 Event。

// 觸發事件var myEvent = new Event('mousedown');test.dispatchEvent(myEvent); // => true

接下來實現在獲取的節點上直接調用 .trigger() 方法

1.為Element 增加trigger方法

Element.prototype.trigger = function(eventName){  this.dispatchEvent(new Event(eventName));}let target = document.querySelector('#test'); // Elementtarget.trigger('mousedown'); // => 'hello jTool'

2.為 NodeList 增加 trigger 方法

target = document.querySelectorAll('#test'); // NodeListtarget.trigger('mousedown'); // => Uncaught TypeError: target.trigger is not a function

如上所示 .querySelectorAll() 獲取的節點, 卻并未存在 .trigger() 方法, 這是由于通過 .querySelectorAll() 獲取到的是 NodeList 實例而非 Element。

NodeList.prototype.trigger = function(eventName){  [].forEach.call(this, function(item, index){    item.dispatchEvent(new Event(eventName));  });}target = document.querySelectorAll('#test'); // NodeListtarget.trigger('mousedown'); // => hello jTool

而以上的方法僅限于直接綁定至 DOM 的事件,預綁定的事件,無法通過 new Event().dispatchEvent() 來執行, 且需要其它方法協同處理。

以上代碼是在進行jtool類庫編碼時實踐出來的方式,歡迎star

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對VeVb武林網的支持。


注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久在精品线影院精品国产| 久久伊人精品一区二区三区| 韩剧1988在线观看免费完整版| 国产精品久久久久999| www国产亚洲精品久久网站| 国产欧美精品一区二区| 国产精品亚洲аv天堂网| 国产精品美女www| 亚洲毛茸茸少妇高潮呻吟| 日韩精品视频三区| 成人免费大片黄在线播放| 欧美日韩国产综合视频在线观看中文| 精品高清美女精品国产区| 成人国产精品免费视频| 欧美激情视频播放| 亚洲精品短视频| 韩国国内大量揄拍精品视频| 浅井舞香一区二区| 日韩精品在线第一页| 中文字幕日韩欧美在线视频| 日韩欧美在线字幕| 日韩av在线免费播放| 日韩成人性视频| 国产精品免费一区二区三区都可以| 久久99久久99精品免观看粉嫩| 91视频88av| 日韩国产精品一区| 久久视频在线播放| 欧美专区在线观看| 在线成人免费网站| 国产精品丝袜久久久久久高清| 欧美一级淫片播放口| 亚洲 日韩 国产第一| 成人国产精品久久久| 美乳少妇欧美精品| 亚洲天天在线日亚洲洲精| 午夜精品视频网站| 91精品国产91久久久久久久久| 亚洲最大av网站| 美日韩在线视频| 亚洲精品在线观看www| 亚洲精品国产品国语在线| 欧美中文在线观看国产| 日韩av在线一区二区| 日韩欧美中文免费| 欧美激情久久久久久| 精品亚洲一区二区三区在线观看| 欧美黄色片视频| 国产亚洲视频在线观看| 亚洲第一精品福利| 精品偷拍各种wc美女嘘嘘| 欧美另类69精品久久久久9999| 亚洲欧洲国产精品| 日韩av免费在线播放| 欧美中在线观看| 精品久久久久久电影| 国内外成人免费激情在线视频网站| 亚洲精品ady| 成人黄色免费看| 亚洲精品美女在线观看播放| 精品久久久久久亚洲精品| 亚洲自拍av在线| 欧洲亚洲免费视频| 欧美第一淫aaasss性| 中文字幕日韩精品在线| 欧美日韩福利电影| 亚洲精品福利免费在线观看| 91免费福利视频| 国模gogo一区二区大胆私拍| 久久免费在线观看| 亚洲人成在线免费观看| 国产视频自拍一区| 欧美日韩免费观看中文| 欧美一乱一性一交一视频| 中文字幕日韩免费视频| 蜜月aⅴ免费一区二区三区| 久久国产精品网站| 亚洲国产日韩欧美综合久久| 国产丝袜一区视频在线观看| www.久久久久久.com| 大胆欧美人体视频| 中文字幕亚洲欧美日韩高清| 久久影院模特热| 国产精品久久久久9999| 国产精品夫妻激情| 亚洲精品99久久久久中文字幕| 欧美激情精品久久久久久大尺度| 一区二区三区四区视频| 亚洲字幕一区二区| 国产精品成久久久久三级| 日韩美女免费视频| 亚洲一区二区三区在线视频| 日韩美女在线播放| 在线视频日韩精品| 亚洲欧美综合另类中字| 国产精品久久久久久久久久东京| 日韩大胆人体377p| 亚洲在线视频观看| 国产一区私人高清影院| 欧美孕妇性xx| 亚洲黄页视频免费观看| 欧美精品电影在线| 亚洲乱码av中文一区二区| 精品亚洲aⅴ在线观看| 欧美怡红院视频一区二区三区| 精品日韩中文字幕| 欧美成人久久久| 亚洲欧美日韩精品久久奇米色影视| 91美女片黄在线观看游戏| 久久亚洲精品成人| 久久久亚洲欧洲日产国码aⅴ| 91精品久久久久久久久不口人| 国产热re99久久6国产精品| 97在线精品视频| 日韩中文综合网| 91久久国产婷婷一区二区| 欧美在线亚洲一区| 国产噜噜噜噜久久久久久久久| 成人av番号网| 欧美视频国产精品| 成人黄色片网站| 欧美激情啊啊啊| 国产精品久久久久av免费| 国产精品视频久久久| 九九久久综合网站| 欧美性xxxx极品hd欧美风情| 日韩经典中文字幕在线观看| 中文字幕日本欧美| 国产国语刺激对白av不卡| 91在线观看免费网站| 91av福利视频| 亚洲欧美日韩成人| 欧美日韩国产二区| 国产视频999| 综合国产在线观看| 久久久99久久精品女同性| 欧美午夜女人视频在线| 国产精品男女猛烈高潮激情| 国产极品精品在线观看| 亚洲免费视频在线观看| 中文字幕亚洲专区| 亚洲石原莉奈一区二区在线观看| 色综合男人天堂| 日韩动漫免费观看电视剧高清| 欧美肥老太性生活视频| 在线视频国产日韩| 欧美久久精品午夜青青大伊人| 久久97精品久久久久久久不卡| 97色在线视频观看| 亚洲最大成人在线| 欧美精品久久久久久久久| 日韩高清电影免费观看完整| 国产精品女人网站| 亚洲免费电影一区| 日本道色综合久久影院| 成人黄色网免费| 国产精品jizz在线观看麻豆| 国产精品久久久久av免费| 欧美特黄级在线| 亚洲国产欧美一区二区三区同亚洲| 国产精品午夜一区二区欲梦| 亚洲精品国产美女| 91久久嫩草影院一区二区| 亚洲电影免费观看高清完整版|