jQuery 事件註冊-bind()

jQuery/jQuery Mobile 技術文件 》

jQuery 可以透過 bind() 方法進行事件處理器的註冊工作,以 click 事件而言,考慮以下的註冊程式片段:

$('#msg').bind('click', sayHello);

這段程式碼為一個 id="msg" 的物件註冊 click 事件, sayHello 為註冊函式,這段 bind() 程式意義同下式:

$('#msg').click(sayHello);

現在於畫面上配置兩個div標籤,設定如下:

<div id="msga" style ="">A</div>  
<div id="msgb" style ="">B</div>

接下來撰寫兩個測試函式,sayHello_a() 與 function sayHello_b() 分別輸出不同的訊息文字如下:

function sayHello_a() {        
    console.log('HELLO bind');         
}
function sayHello_b() {
    console.log('HELLO click');
}

接下來透過 bind() 與 click() ,分別將上述的兩個函式,註冊至 msga 與 msgb 。

$('#msga').bind('click', sayHello_a);
$('#msgb').click(sayHello_b);

現在,根據使用者點擊的div區塊,會觸發其註冊的 click 事件。

如你所見,bind() 與 click() 意義相同,這兩者的差異在於 bind() 支援更複雜的事件註冊功能,例如群組化事件註冊,或是執行事件註銷等操作。

jQuery/jQuery Mobile 技術文件 》

沒有留言: