jquery筆記:事件物件 event.currentTarget,event.data,event.delegateTarget,event.relatedTarget.......
阿新 • • 發佈:2019-02-02
event.currentTarget
在事件冒泡階段中的當前DOM元素
$("p").click(function(event) { alert( event.currentTarget === this ); // true });
event.data
當前執行的處理器被繫結的時候,包含可選的資料傳遞給jQuery.fn.bind。$("a").each(function(i) { $(this).bind('click', {index:i}, function(e){ alert('my index is ' + e.data.index); }); });
event.delegateTarget
當currently-called的jQuery事件處理程式附加元素。
此屬性是最經常有用是通過過.delegate() 或.on()附加委派的事件,事件處理程式附加在正在處理的元素的祖先上。它可用於,例如,指明委派識別和刪除事件處理程式。
$(".box").on("click", "button", function(event) { $(event.delegateTarget).css("background-color", "red"); });
event.relatedTarget
在事件中涉及的其它任何DOM元素。
對於 mouseout 事件,它指向被進入的元素;對於 mousein 事件,它指向被離開的元素。
$("a").mouseout(function(event) { alert(event.relatedTarget.nodeName); // "DIV" });
event.result
這個屬性包含了當前事件事件最後觸發的那個處理函式的返回值,除非值是 undefined 。event.target
最初觸發事件的DOM元素。
這是註冊事件時的物件,或者它的子元素。通常用於比較 event.target 和 this 來確定事件是不是由於冒泡而觸發的。經常用於事件冒泡時處理事件委託。
event.timeStamp
這個屬性返回事件觸發時距離1970年1月1日的毫秒數。event.type
event.which
針對鍵盤和滑鼠事件,這個屬效能確定你到底按的是哪個鍵或按鈕。
event.which 將 event.keyCode 和 event.charCode 標準化了。推薦用 event.which 來監視鍵盤輸入。