搜尋

首頁  >  問答  >  主體

javascript - jQuery兩個操作觸發同一個函數,如何最佳化寫法?

$('#button').click(function() {
    todo();
});

$('#input').keydown(function(e) {
    if(e.keyCode == 13) {
        todo();
    }
});

例如點擊按鈕或在輸入框中回車執行相同的操作,能否優化成如下類型代碼:

$('#buttonA,#buttonB').click(function(){
    todo....
});

phpcn_u1582phpcn_u15822746 天前412

全部回覆(1)我來回復

  • 怪我咯

    怪我咯2017-05-19 10:36:29

    一般我喜歡用託管的方式

    $('.container').on('click', '.btn', function(e) {
        // 只有在点击 .container 下的 .btn 元素才运行, this 只想的是 .btn 元素
        // 而且 不需要考虑你的 .btn 是否存在, 是否后加载
    });

    如果你兩個操作有共性, 可以用一樣的 類名 標識和綁定事件
    不同類型的話, 用你第一種方法就挺好

    回覆
    0
  • 取消回覆