javascript中的Popover实现

javascript中的Popover实现,javascript,html,extjs,Javascript,Html,Extjs,我想让我的爆米花控制。大多数问题,如箭头方向,popover定位等,我可以自己解决。有一件事我不确定如何以最好的方式做,那就是当用户点击外部时如何隐藏它。欢迎链接到好的示例或实施建议 我认为最好的方法是将mousedown处理程序绑定到document.body并检查click是否在popover.el中 document.addEventListener("click", function (ev) { hidePopOverIfClickOutside(ev); }); var

我想让我的爆米花控制。大多数问题,如箭头方向,popover定位等,我可以自己解决。有一件事我不确定如何以最好的方式做,那就是当用户点击外部时如何隐藏它。欢迎链接到好的示例或实施建议

我认为最好的方法是将
mousedown
处理程序绑定到
document.body
并检查click是否在popover.el中

document.addEventListener("click", function (ev) {
  hidePopOverIfClickOutside(ev);
});
   var popover = Ext.create('Your.Poopover', {/* ... */});

   popover.mon(Ext.getBody(), 'mousedown', function(e) {
     if (popover.isVisible() && !e.within(popover.el))
       popover.hide();
   });

我认为最好的方法是将
mousedown
处理程序绑定到
document.body
并检查click是否在popover.el中

   var popover = Ext.create('Your.Poopover', {/* ... */});

   popover.mon(Ext.getBody(), 'mousedown', function(e) {
     if (popover.isVisible() && !e.within(popover.el))
       popover.hide();
   });

事件在失去焦点时被发送到元素

事件在失去焦点时被发送到元素

没法去上班。分子人的密码没问题。jQueryPopover插件也是以类似的方式完成的。在我看来,模糊事件看起来更干净。你能解释一下向哪个元素建议模糊事件吗?无法使其正常工作。分子人的密码没问题。jQueryPopover插件也是以类似的方式完成的。在我看来,模糊事件看起来更干净。你能解释一下向哪个元素建议模糊事件吗。