我的jQuery开始变得不必要地长。有没有办法轻松组合这两个功能。我的第一个想法是从按键功能创建一个自定义事件。任何有关阅读内容的解决方案或建议都将不胜感激。
$('th:nth-child(3):first').click(function () {
$('#dtSelect').val(2).change();
});
$('th:nth-child(3):first').keydown(function(event){
if(event.keyCode==13){
$('#dtSelect').val(2).change();
}
});
答案 0 :(得分:3)
简单地:
$('th:nth-child(3):first').on('change keydown', function(event) {
if(!event.keyCode || event.keyCode==13){
$('#dtSelect').val(2).change();
}
});
这会触发change
和keydown
个事件,并且仅在change()
不存在(event.keyCode
)或等于change
时才会调用13
keydown
({{1}})。
答案 1 :(得分:2)
function combined(event) {
if (typeof event === 'undefined' || event.keyCode==13)
$('#dtSelect').val(2).change();
}
$('th:nth-child(3):first').click(combined).keydown(combined);
虽然在这种情况下我并不认为值得合并。