[英]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.