【发布时间】:2015-02-10 20:15:39
【问题描述】:
下面有一个搜索输入和一个复杂的下拉div。 当焦点位于输入上时,脚本会显示 div。
它在任何地方都可以正常工作,除了在 Opera 中。 在 Opera 中,当我关注输入时,什么也没有发生。但是,如果我点击另一个桌面应用程序,例如查看我的邮件,然后返回网站,网站上的下拉菜单会突然显示。
有什么方法可以解决这个问题?
function checkSf() {
if ($('#search-field').val() != "" || $('#search-field').is(":focus")){
$('.search-dropdown').show();
}
}
$('#search-field').keyup(function(){
checkSf()
});
$('#search-field').on('focus', function(){
checkSf()
});
【问题讨论】:
-
我没有对元素 keyup 和焦点事件进行
$('#search-field').is(":focus")的逻辑检查。在这两种情况下,元素都是聚焦的。也就是说,我会尝试使用超时,也许只是 Opera 上的事件堆栈问题
标签: javascript jquery html css opera