javascript - jQuery兩個操作觸發同一個函數,如何最佳化寫法?
phpcn_u1582
phpcn_u1582 2017-05-19 10:34:29
0
1
425
$('#button').click(function() {
    todo();
});

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

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

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

phpcn_u1582
phpcn_u1582

全部回覆(1)
刘奇

一般我喜歡用託管的方式

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

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

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板