Re: [問題] jquery 的 .on() 要如何用純 js 實現?
※ 引述《tyf99 (呵呵)》之銘言:
: 如果想把某類元素(包含未來可能出現的同類元素)都加上 event handler
: 用純 js 要如何實現?
: 例如放在購物車裡面的商品,可以用按鈕來修改數量.
: 現在是把 <button class="plus"> 綁上 goodsIncrease()
: 以後加入的新商品,也都會自動綁上 goodsIncrease()
: jquery 的寫法是 $(document).on("click", "button.plus", goodsIncrease)
: 這要如何改寫成不用 jquery 的版本?
這叫 event delegation, 也就是把 callback 綁定到 document 上,
再透過 event object 確定觸發的element
document.addEventListener("click", function(event){
var target = event.target
if ( target.matches("button.plus") ){
goodsIncrease.call(target, event)
//假裝是某個 button.plus 發出來的
}
})
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.8.48.101
※ 文章網址: https://www.ptt.cc/bbs/Web_Design/M.1503083814.A.47E.html
→
08/19 16:28, , 1F
08/19 16:28, 1F
推
08/19 18:37, , 2F
08/19 18:37, 2F
推
08/20 11:42, , 3F
08/20 11:42, 3F
推
08/20 13:33, , 4F
08/20 13:33, 4F
→
08/20 13:33, , 5F
08/20 13:33, 5F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
Web_Design 近期熱門文章
PTT數位生活區 即時熱門文章