jQuery event.namespace

admin發表於2017-02-19

此屬性可以返回此事件觸發時所指定的名稱空間,如果沒有指定名稱空間,那麼它的返回值就是空("")。

預設,當為一個元素,同一個事件型別註冊多個事件處理函式,一旦此事件被觸發,那所有的事件處理函式都會執行。如果要移除元素上註冊的某種型別事件處理函式的,那麼就會移除此型別事件所有的事件處理函式。

為了解決上述問題,jQuery就引入了名稱空間這個概念。

關於名稱空間可以參閱jQuery 名稱空間一章節。

語法結構:

[JavaScript] 純文字檢視 複製程式碼
event.namespace

jQuery1.4.3版本新增。

程式碼例項:

[HTML] 純文字檢視 複製程式碼執行程式碼
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="renderer" content="webkit">
<link id="antzone" rel="Stylesheet" type="text/css"/> 
<title>螞蟻部落</title>
<script src="https://code.jquery.com/jquery-3.0.0.js"></script>
<script> 
var str="";
function handler(event){
  str=str+event.namespace+"<br/>";
}
$(document).ready(function(){
  var $bt = $("#bt");
  $bt.on("click.antzone.foo", handler);
  $bt.on("click.mayi", handler);
  $bt.on("click.softwhy.foo", handler);

  $bt.trigger("click");
  $bt.trigger("click.antzone.foo");
  $bt.trigger("click.mayi");
  $bt.trigger("click.softwhy.foo");

  $("#show").html(str);
});
</script>
</head>
<body>
<input type="button" id="bt" value="檢視演示"/>
<div id="show"></div>
</body>
</html>

相關文章