簡體   English   中英

不在dom上的元素上的延遲綁定單擊事件

[英]lazy binding click event on elements not on dom

DOM上很少有元素是作為對Web服務的響應而加載的。 我想在他們上綁定點擊事件。 我對webservice調用沒有任何控制權,因為它是由我不打算修改的框架完成的。

$(document).on('click', 'element', function)

這本來可以幫到我,但是正在使用的jQuery版本較舊。 是否有替代方法或本機javascript解決方案?

在JavaScript世界中,最熱門的方法之一是事件委托,這是有充分理由的。 事件委托使您可以避免將事件偵聽器添加到特定節點; 而是將事件偵聽器添加到一個父對象。 引用此: http : //davidwalsh.name/event-delegate

document.getElementById("parent-list").addEventListener("click", function(e) {
    // e.target is the clicked element!
    // If it was a list item
    if(e.target && e.target.nodeName == "LI") {
        // List item found!  Output the ID!
        console.log("List item ", e.target.id.replace("post-"), " was clicked!");
    }
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM