Bootstrap的popover(弹出框)在append后弹不出(失效)

没有口水与汗水,就没有成功的泪水。早安!有时,我们以为赢了,其实,我们输了!因为,我们赢了"面子",却输了"里子"!早安!

在使用popover(弹出框)时,发现跟其他组件使用方式有些区别,需要手动初始化才能弹出来,如下:

<button type="button" class="btn btn-default" data-container="body" data-toggle="popover" data-placement="top" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus.">
 Popover on 顶部
</button>

<script>
$(function () {
 $('[data-toggle="popover"]').popover()
})
</script>

但如果popover(弹出框)DOM是后来创建的,比如append后,最开始手动初始化了也没用,经过几次测试后,发现需要再刚创建popover的DOM后,再一次初始化才生效,如下:

 var testHtml = "<button type='button' class='btn btn-default' data-container='body' data-toggle='popover' data-placement='top' data-content='Vivamus sagittis lacus vel augue laoreet rutrum faucibus.'>"+
     "Popover on 顶部"+
    "</button>"

 $("body").append(testHtml);
 $('[data-toggle="popover"]').popover(); //创建popover(弹出框)DOM后立即初始化

刚创建时效果图:

点击时效果图:

本文Bootstrap的popover(弹出框)在append后弹不出(失效)到此结束。宽容是化解一切仇恨的最好办法,谅解是解决问题的关键。小编再次感谢大家对我们的支持!

标签: 不出