我在互联网上进行了广泛的搜索,虽然我发现这篇 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(使用前将#替换为@)