簡體   English   中英

如何在YUI事件處理程序中獲取DOM節點?

[英]How do I get the DOM node within a YUI event handler?

給定一個與YUI的一系列鏈接綁定的通用處理程序,我如何找出哪個鏈接觸發了該事件?

YUI().use('node', function (Y) {
    var list = Y.one('#studentList'), links;
    links = list.all('a');
    links.on('click', function (e) {
        alert(this.get('id')); // this just shows a comma delimited list of all ids
    });
});

我想我可以單獨綁定每個鏈接,而不是使用鏈接列表上的“ on”慣用語,但是對我來說,YUI無法提供對DOM節點的訪問似乎很奇怪。 深入研究事件對象將顯示幾個看起來像DOM節點的私有字段,但是肯定有一種安全的方法可以做到這一點。

e.currentTarget似乎是您要找的東西:

links.on('click', function (e) {
    alert(e.currentTarget.get('id'));
});

NodeList的on

默認情況下, this對象將是訂閱來源的NodeList ,而不是接收事件的Node 使用e.currentTarget引用Node

暫無
暫無

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

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