我發現我的問題是類似於this question。 當我使用事件名稱空間時,即使沒有代理方法,它也不會顯示名稱空間。事件名稱空間不顯示與jquery
HTML
<p>Get the click's namespace</p>
<button>Remove the click event</button>
JS
$(document).ready(function(){
$("p").on("click.someNamespace",function(event){
console.log(event.namespace);
});
$("button").click(function(){
$("p").off("click.someNamespace");
});
});
詳細
:http://codepen.io/ShawnHuang/pen/zaHui
還有另外一個代碼是成功的,但我不知道什麼是兩個代碼之間的不同。 click this
感謝您的回覆!
哦!!你有名字空間! 更多的問題是我的代碼和w3school示例有什麼不同。 第一個可以用event.namespace獲取名稱空間, ,但第二個用event.handleObj.namespace。 –
當觸發特定事件(使用名稱空間)時,爲事件對象設置屬性名稱空間,否則爲空。事件的屬性handleObj似乎在所有情況下都得到了這個屬性集,因爲它是特定於處理事件的對象的,而不是直接的事件。這是我的理解,因爲沒有DOC,我只是在這裏推測 –
@Shawn:正如我已經說過的,在w3school示例中,他們使用'.trigger':'$(this).trigger(「custom。 someNamespace「);'。 –