5

アイテムのリストがあり、それぞれにブートストラップポップオーバーが関連付けられています(ドキュメントはこちら)。それらは次のように開始されます。

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

これは機能しますが、幅が狭いと、ビューポートからポップオーバーが失われます。に基づいて配置を条件付きにしたいのですが$(document).width();、初期オプションを上書きする方法がわかりません(たとえば、幅が約1000pxの場合、配置を「上」に切り替えます)。

ここでjsfiddleに簡略化されたバージョンをまとめました。どうもありがとう。

4

2 に答える 2

20

配置は、その値として関数を取ることもできます。この関数では、ビューポートの幅に基づいて適切な値を返すことができます。たとえば。

$(document).ready(function(){
    $('#my_list li').popover({
        placement: wheretoplace
    });
});
function wheretoplace(){
    var width = window.innerWidth;
    if (width<500) return 'bottom';
    return 'left';
}
于 2011-11-17T11:19:24.833 に答える
0

768未満のウィンドウで左から上に配置を変更します

placement: function(){return $(window).width()>768 ? "auto left":"auto top";}
于 2017-03-04T19:33:46.887 に答える