javascript - jQuery - 删除模糊元素但捕获他的 child 的点击

标签 javascript jquery

我有以下代码:

$('#myEl').blur(function(){
  $(this).remove('.children');
});

但是子元素内部有链接,另一个 jQuery 操作不会触发,因为 .children 在模糊时被删除,我猜这是在单击操作之前触发的。简单的例子:

  1. child 可见并且#myEl 具有焦点
  2. 我点击子链接
  3. #myEl 失去焦点
  4. 子元素已删除
  5. 未触发子链接操作,因为我猜链接不再存在

如何解决这个问题?我试图延迟删除:

$(this).delay(100).remove('.children');

没有运气。

最佳答案

如果您使用延迟方式,则不能使用jQuery .delay(),因为它仅适用于排队元素(带动画)。

您可以使用setTimeout:

$('#myEl').blur(function(){
  var $this = $(this);
  setTimeout(function(){
    $this.remove('.children');
  }, 100)
});

关于javascript - jQuery - 删除模糊元素但捕获他的 child 的点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24579894/

相关文章:

Eloquent Javascript 中的 Javascript 函数

jQuery $ ("img[src=the_image_souce]").attr ('src' ,'new_src' );不起作用

javascript - 我的 PHP 代码没有将值插入数据库

javascript - 如何在对象数组中搜索 - javascript

javascript - AJAX 调用时出错 :Error: NetworkError: DOM Exception 19

javascript - 循环内的嵌套 ajax 调用未按顺序执行

javascript - 需要 HTML5,如果为空,则打开折叠并聚焦所需元素

jquery - Fancybox 2 不会加载谷歌地图?

javascript - 悬停事件上的图像

javascript - knockout ,可选表格行