是否可以根据屏幕宽度更改Bootstrap popovers的位置?

时间:2011-11-17 11:08:41

标签: javascript jquery twitter-bootstrap

我有一个项目列表,每个项目都有一个与之关联的Bootstrap popover(docs here)。他们是这样发起的:

$('#my_list li').popover({
   placement: 'left'
});

这样可行,但在宽度较小时,弹出窗口会从视口中丢失。我想根据$(document).width();设置条件,但是我看不到覆盖初始选项的方法(例如,在大约1000px的宽度,将位置切换到'上方')。

我整理了一个简化版at jsfiddle here。非常感谢。

2 个答案:

答案 0 :(得分:20)

展示位置也可以将函数作为其值。在此函数中,您可以根据视口的宽度返回适当的值。例如。

$(document).ready(function(){
    $('#my_list li').popover({
        placement: wheretoplace
    });
});
function wheretoplace(){
    var width = window.innerWidth;
    if (width<500) return 'bottom';
    return 'left';
}

答案 1 :(得分:0)

它在窗口上从左到右的位置变化小于768

placement: function(){return $(window).width()>768 ? "auto left":"auto top";}