除了瀏覽器內(nèi)置的事件之外布朦,我們也可以觸發(fā)和綁定自定義事件囤萤。實(shí)際上,這是架構(gòu)庫(kù)的一個(gè)好方法——也是jQuery 的大多數(shù)插件所使用的模式喝滞。大多數(shù)瀏覽器廠商均未實(shí)現(xiàn)
W3C 標(biāo)準(zhǔn)中的自定義事件阁将,可以使用諸如jQuery 或Prototype 的類庫(kù)來使用這個(gè)特性。jQuery 中可以使用trigger() 函數(shù)來觸發(fā)自定義事件右遭∽鲋眩可以通過命名空間的形式來管理事件名稱,比如:
// 綁定自定義事件
$(".class").bind("refresh.widget",function(){});
// 觸發(fā)自定義事件
$(".class").trigger("refresh.widget");
通過給trigger() 傳入一個(gè)額外的參數(shù)來給事件處理程序傳入數(shù)據(jù)窘哈。數(shù)據(jù)會(huì)以附加參數(shù)的形式帶入回調(diào):
$(".class").bind("frob.widget", function(event, dataNumber){
console.log(dataNumber);
});
用點(diǎn)號(hào)分隔只是一種約定吹榴,并無特殊含義,點(diǎn)號(hào)在jQuery 中比較常用