我有一个搜索输入,我隐藏了提交按钮。相反,当用户按下回车键时,会出现一个下拉列表,其结果使用以下js:
$(function() {
$("form input").keypress(function (e) {
if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)) {
$(this).next("#searchResult").addClass('show');
return false;
} else {
return true;
}
});
});
如果用户点击.show
之外,如何确保删除#searchResult
类?
答案 0 :(得分:4)
您可以利用blur
事件来检测元素何时失去焦点:
$("#searchResult").on( "blur", function(){
// The users focus is no longer on this element!
});
您也可以将其写为:
$("#searchResult").blur( function(){
// The users focus is no longer on this element!
});
这当然是假设#searchResult
元素让用户专注于开始。
参考:
答案 1 :(得分:3)
你能试试吗,
$("body:not(#searchResult)").click(function(){
$("#searchResult").removeClass("show");
});