【问题标题】:Bootstrap popover disappears immediately after second appearanceBootstrap 弹出框在第二次出现后立即消失
【发布时间】:2014-07-28 16:17:05
【问题描述】:

我有一个带有以下配置/初始化的引导弹出窗口:

$element.popover({trigger: 'manual'});

$element.data('bs.popover').options.content = 'some text';
$element.popover('show');

将触发弹出框。但在弹出框第二次出现后,它会出现一秒钟并立即消失。之后popover元素被销毁。

在调试 bootstrap.js 之后,我可以说,在“show”-action 之后,“hide”和“destroy”都不会触发。

编辑:

好的,我修复了它...在显示一个弹出框之前,调用了“hideAll”方法(这包括必须显示的弹出框)。我猜一个popover的隐藏是由bootstrap异步调用的,因为动画淡出。

现在我除了来自 hideAll 的特定弹出框...一切正常

【问题讨论】:

  • 为什么不直接使用native bootstrap而不是js呢? getbootstrap.com/javascript/#popovers
  • 因为它集成在一个淘汰赛自定义绑定中。
  • 我们能否在 fiddle 中找到一个可以重现您遇到的确切问题的工作示例?

标签: jquery twitter-bootstrap bootstrap-popover


【解决方案1】:

我也遇到过类似的问题。我有一堆弹出框来指导用户填写表格中的输入。我的验证步骤将选择下一个需要激活弹出框的输入,隐藏所有弹出框,然后显示下一个输入的弹出框。我喜欢这样的想法,即我可以通过始终隐藏所有$('[data-toggle="popover"]').popover("hide"); 然后用$('#' + current_popover_id).popover("show"); 显示一个来确保一次只能看到一个弹出框。异步性质并不像我希望的那样一致。我最终隐藏了一个弹出窗口并一次显示一个弹出窗口。

【讨论】:

    猜你喜欢
    • 2020-09-07
    • 1970-01-01
    • 2021-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-17
    • 1970-01-01
    • 2022-06-21
    相关资源
    最近更新 更多