javascript - 如何使用 jQuery 模糊调用函数,除非单击链接?

标签 javascript jquery jquery-events

我有一个小的 jQuery 脚本:

$('.field').blur(function() {
    $(this).next().children().hide();
});

隐藏的子项包含一些链接。这使得无法单击链接(因为它们被隐藏)。什么是适当的解决方案?

这是我所得到的最接近的结果:

$('.field').blur(function() {
       $('*').not('.adress').click(function(e) {
            foo = $(this).data('events').click;
            if(foo.length <= 1) {
//             $(this).next('.spacer').children().removeClass("visible");
            }
            $(this).unbind(e);
        });
});

未注释的行应该指的是模糊的字段,但它似乎不起作用。有什么建议吗?

最佳答案

您可以稍微延迟一下,如下所示:

$('.field').blur(function() {
  var kids = $(this).next().children();
  setTimeout(function() { kids.hide(); }, 10);
});

这让您有时间在这些子链接消失之前进行点击。

关于javascript - 如何使用 jQuery 模糊调用函数,除非单击链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4053123/

相关文章:

javascript - 为什么按键不处理删除键和退格键

页面上的 JavaScript 错误导致我的 jQuery 处理程序无法执行

javascript - jQuery 旋转函数 - 在图像点击时指定 20% 旋转?

javascript - js如何在使用文件:///protocol时动态加载json文件

javascript - Promise 中的 .done 是什么?

javascript - 从 Backbone Js View 取消绑定(bind)事件,而不影响 DOM

javascript - 使用ajax实时更新javascript变量

javascript - 如何创建新事件

c# - 突出显示焦点上的文本框服务器控件

javascript - D3.js:标签放错位置