popover:在弹出窗口外单击时关闭弹出窗口

Zak*_*ziz 1 jquery twitter-bootstrap

我正在使用bootstrap v2.2.2.我已经尝试了一些其他的方法(即:关闭popover外popover但内部保持打开以及如何通过单击外部解除Twitter Bootstrap popover 还尝试了Boot strapX clickover插件:https://stackoverflow.com/a/11029479/ 104381​​7)但我不能通过这些方法使它工作.

我用我在页面上使用代码的方式创建了一个JSFiddle:http://jsfiddle.net/FYNLL/(虽然我使用的是v2.2.2,但JSFiddle使用的是v2.0.2中的JS.我认为这些版本有一些差异.当我在本地使用v2.2.2时,直到我点击链接才会显示popover.在JSFiddle中它会在悬停时显示.要清楚我要在链接后显示它已被点击,而不是悬停)

我想要完成的是在点击弹出窗口外的区域时隐藏弹出窗口.如果单击另一个弹出链接,我希望关闭第一个弹出窗口并单击要打开的弹出窗口.

这也不是绝对必要的,但是popover当它在.js文件中时我无法工作(我已经尝试过使用.each()).我真的想摆脱<script> $(function () { $("a[rel=popover]").popover(); });</script>我的HTML文件.同样,这不是一个优先事项.

小智 7

// Universal Popupover Outside Click Close Method :)
jQuery(document).mouseup(function(e){ 
    var popocontainer = jQuery(".popover");
    if (popocontainer.has(e.target).length === 0){
        jQuery('.popover').toggleClass('in').remove();
    }
});
Run Code Online (Sandbox Code Playgroud)