如果popover中的元素具有焦点,则隐藏模糊上的bootstrap popover

Kyl*_*e R 6 jquery twitter-bootstrap

我有一个带有文本输入的Bootstrap popover.如果用户在弹出窗口外单击,我希望弹出窗口隐藏,但如果弹出窗口内的任何内容(如输入字段)获得焦点,则保持打开状态.

使用该trigger:focus选项不起作用,因为在显示弹出窗口后,单击任何内容(包括弹出窗口)会隐藏它.

我已经尝试添加一个$('.popover').on('blur')函数,但是我不知道如何在触发模糊事件时检查弹出窗口内的某些东西是否有焦点.

这个小提琴说明了不受欢迎的行为 http://jsfiddle.net/Lcsqjdgu/

Sch*_*lzy 5

这应该像你所描述的那样工作。

  1. 显示弹出窗口时将焦点设置在输入上。
  2. 隐藏模糊的弹出窗口。

小提琴

$('button').on('shown.bs.popover', function() {
  $('#new_input').focus();
})

$(document).on('blur','.popover', function() {
   $(this).popover('hide');
});
Run Code Online (Sandbox Code Playgroud)