我有多個<button>
,它們各自在.on('click')
上都有自己的職責。現在我想知道,哪種算法更標準|更好|更快|優化?分離的選擇器事件 - 與多個if語句
算法1:
$("#btn1").click(function(e) { // do stuff for btn1 });
$("#btn2").click(function(e) { // do stuff for btn2 });
$("#btn3").click(function(e) { // do stuff for btn3 });
算法2:
$("button").click(function(e) {
var id = $(this).attr('id');
if (id == '#btn1') { // do stuff for btn1 }
elseif (id == '#btn2') { // do stuff for btn2 }
elseif (id == '#btn2') { // do stuff for btn3 }
});
如果有任何性能差異,它是微不足道的。這是個人偏好和代碼組織的問題。我更喜歡綁定事件到特定的按鈕(通過ID)。所以我可以清楚地看到哪個按鈕做什麼。如果有多個按鈕的重複代碼,我創建一個函數。 –
@VictorLevin你是對的。 tnx – stack
[jQuery綁定點擊事件最佳實踐]可能的重複(http://stackoverflow.com/questions/11552174/jquery-binding-click-event-best-practices) –