Javascript 工具提示数据的位置=“;对",;不工作[编辑]

Javascript 工具提示数据的位置=“;对",;不工作[编辑],javascript,bootstrap-4,tooltip,Javascript,Bootstrap 4,Tooltip,首先,工具提示适用于所有方向,顶部、底部和左侧。但右翼是行不通的 所以我认为这可能是CSS或HTML结构的问题。(但是工具提示处于绝对位置,所以我不知道为什么会发生这种情况。) HTML 在javascript中,我正在执行以下操作: $(function () { $('[data-toggle="tooltip"]').tooltip({ placement: 'right' }); }); 正如我所说的,对于任何其他位置,它都可以

首先,工具提示适用于所有方向,顶部、底部和左侧。但右翼是行不通的

所以我认为这可能是CSS或HTML结构的问题。(但是工具提示处于绝对位置,所以我不知道为什么会发生这种情况。)

HTML

  • javascript中,我正在执行以下操作:

    $(function () {
        $('[data-toggle="tooltip"]').tooltip({
            placement: 'right'
        });
    });
    
    正如我所说的,对于任何其他位置,它都可以正常工作。但对右翼来说,它坏了

    事实上,我不知道为什么,但它是用左属性渲染的:

    <div class="tooltip fade show bs-tooltip-left" role="tooltip" id="tooltip558151" style="position: absolute; transform: translate3d(125px, 207px, 0px); top: 0px; left: 0px; will-change: transform;" x-placement="left">
        <div class="arrow" style="top: 8px;" />
        <div class="tooltip-inner">Dashboard</div>
    </div>
    
    
    仪表板
    
    问题

    好的,我发现了问题。看起来像是根据父div自动引导推送文本。例如,如果工具提示位于窗口右侧,则无法强制将其放置在右侧

    我不知道如何纠正这种行为

    代码


    请检查代码

    我认为您应该将位置放在元素的数据属性中:

    <button data-toggle="tooltip" data-placement="left"> tooltip </button>
    
    工具提示
    
    您应该将文本放在元素的数据属性中

    $(函数(){
    $('[data toggle=“tooltip”]')。工具提示({
    位置:'对'
    });
    });
    
    
    

  • 问题在于div的边距,请查看:

    $(文档).ready(函数(){
    $(“body”).tooltip({selector:'[data toggle=tooltip]',位置:'top'});
    });
    
    。问题{
    左边距:140像素;
    边缘顶部:140px;
    }
    
    霍拉·蒙多
    
    最佳解决方案:

    $('[data-toggle="tooltip"]').each(function() {
    
      $(this).data('bs.tooltip').config.placement = 'right';// For dynamic position
      $(this).data('bs.tooltip').config.boundary= 'right'; // Used for tooltip boundary range
    });
    

    您能创建提琴或堆栈代码段吗?我会尝试,给我时间。@20yco done:但在这个例子中,您将它推到左边,然后推到右边。抱歉,更改了方向在您的示例中,我可以将其推到底部或右侧。但左边或上面是impossible@ValRob更改代码后,别忘了单击小提琴顶部的“run”(运行)是的,但它不能转到顶部或左侧