2012-02-03 71 views
2
$(document).ready(function() { 
    $('#switcher-default').bind('click', function() { 
    $('body').removeClass('narrow'); 
    $('body').removeClass('large'); 
    }); 
}); 

第二個功能:這兩個函數的結果有什麼區別?

$(document).ready(function() { 
    $('#switcher-default').click(function() { 
    $('body').removeClass('narrow'); 
    $('body').removeClass('large'); 
    });  
}); 

jQuery的的新手,什麼是上面的代碼之間的區別?我覺得添加或刪除綁定function,結果是相同的。爲什麼代碼添加綁定事件?

+0

您是否閱讀過文檔 – Rafay 2012-02-03 19:45:06

回答

2

他們都會做同樣的事情附加click處理程序#switcher-default元素。 bind只是將任何事件附加到匹配的元素集的其他方式。

使用bind您可以在元素上附加多個具有公共事件處理程序的事件。 eventType應該用空格分隔。

$('#foo').bind('mouseenter mouseleave', function() { 
    //Do something 
}); 
3

沒有區別。這兩段代碼都將該函數附加到click事件。如果您不知道將綁定到什麼類型的事件,綁定就很有用。

例如:http://jsfiddle.net/3wCMJ/

閱讀Jquery的API文檔:http://api.jquery.com/click/

至於點擊()函數:

此方法是.bind快捷方式( '點擊' ,處理程序)

7

這是相同的,因爲你可以在jQuery的文檔,查看有關.click()

This method is a shortcut for .bind('click', handler) 
2

您可以通過閱讀click() documentation找到答案:

此方法是一個快捷方式。在前兩個 變體中,綁定('click',處理程序),以及第三個中的.trigger('click')。

並且還bind() documentation表明在版本1.7和以上使用on()代替bind()

在jQuery 1.7中,。對()方法是用於 優選的方法事件處理程序安裝到一個文件。對於早期版本, .bind()方法用於將事件處理程序直接附加到 元素。