首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jQuery模糊,但出现异常

jQuery模糊,但出现异常
EN

Stack Overflow用户
提问于 2009-11-19 16:01:09
回答 3查看 1.3K关注 0票数 1

我在一个input元素上设置了一个焦点事件。当有焦点时,jQuery会搜索div并显示它。这是可行的。在同一个输入元素上使用blur事件,我使div隐藏,这也是有效的。但是当我点击一个链接或者想要在显示的div中选择文本时,它会因为blur事件而立即消失。如何为显示的div创建异常?

代码语言:javascript
运行
复制
$("input.search-main-text").focus(function() {
    $("div.quickResults").show();
});

$("input.search-main-text").blur(function() {
    $("div.quickResults").hide();
});
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-11-19 16:52:52

代码语言:javascript
运行
复制
$("input.search-main-text").bind('focus', function() {
    $("div.quickResults").show();
    $(document).bind('mousedown', function(e) {
        if (! $(e.target).closest('div.quickResults').length) {
            $("div.quickResults").hide();
            $(document).unbind('mousedown', arguments.callee);
        }
    })
});
票数 2
EN

Stack Overflow用户

发布于 2009-11-19 16:11:32

您可以尝试执行以下操作:

  1. 绑定focus
  2. On focus的事件处理程序,在显示的div上绑定
  3. on mouseenter上鼠标中心的事件处理程序,从显示的div上的输入字段
  4. on mouseleave /其他合适的事件解除绑定模糊事件,将模糊事件侦听器重新绑定到输入字段。
票数 1
EN

Stack Overflow用户

发布于 2009-11-19 16:26:52

如果没有更多的信息,我不能告诉您更多,只是如果我是您,我会尝试在文本输入元素上使用change事件,而不是使用焦点和模糊。如果您更多地描述您正在尝试实现的内容,我可能会更具体一些。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1761649

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档