根据弹出窗口相对于窗口边缘的 X 位置更改 Bootstrap 弹出窗口的位置?

2023-11-25

我在互联网上进行了广泛的搜索,虽然我发现这篇 stackoverflow 帖子很有洞察力是否可以根据屏幕宽度更改 Bootstrap 弹出窗口的位置?,它仍然没有回答我的问题,可能是由于我无法理解位置/偏移。

这就是我正在尝试做的事情。我希望 Twitter Bootstap Popover 位置位于右侧,除非热点弹出窗口位于视口之外,那么我希望其位于左侧。我正在制作一个具有热点的 iPad Web 应用程序,当您按下热点时,会出现信息,但我不希望它在水平滚动锁定时出现在视口之外。

我想事情会是这样的:

$('.infopoint').popover({
        trigger:'hover',
        animation: false,
        placement: wheretoplace 
    });
    function wheretoplace(){
        var myLeft = $(this).offset.left;

        if (myLeft<500) return 'left';
        return 'right';
    }

想法?谢谢!


我刚刚注意到放置选项可以是string or a 返回字符串的函数每次您单击可弹出链接时都会进行计算。

这使得在没有最初的情况下复制您所做的事情变得非常容易$.each功能:

var options = {
    placement: function (context, source) {
        var position = $(source).position();

        if (position.left > 515) {
            return "left";
        }

        if (position.left < 515) {
            return "right";
        }

        if (position.top < 110){
            return "bottom";
        }

        return "top";
    }
    , trigger: "click"
};
$(".infopoint").popover(options);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

根据弹出窗口相对于窗口边缘的 X 位置更改 Bootstrap 弹出窗口的位置? 的相关文章

随机推荐