bootstrap 弹出窗口在一个地方工作但在另一个地方不工作?

bootstrap popovers working in one place but not the other?

所以这看起来很奇怪。在我的 Rails 4 应用程序中,有两个弹出窗口,一个在菜单中,一个在视图的侧边栏中。

每个视图都加载了 header 部分(资产管道)和导航部分(带有第一个弹出窗口)。

导航中的弹出窗口工作正常,但视图侧边栏中的弹出窗口没有。

在控制台中,我可以看到 header,管道的所有 JS 文件,但我没有得到 (...).popover is not a function,这表明 jQuery 确实是正在加载。

在我的 Application.js 文件中,我有

$('[data-toggle="popover"]').popover('placement', 'bottom');

据我了解,应该一次初始化所有弹出窗口。我还尝试在脚本标签内的视图本身中包含该行。

问题中的弹出框目前正在使用 bootstrap 提供的确切代码,而我试图让它工作,并且包装在 if/else:

  <% if current_user.nil? %>
            <button type="button" class="btn btn-lg btn-danger" data-toggle="popover" title="Popover title" data-content="And here's some amazing content. It's very engaging. Right?">Click to toggle popover</button>
    <% else %>
             <%= button_to "Contribute!", new_project_charge_path(:project_id => @project.id), method: :get, class: "btn btn-primary" %>
    <% end %>

我也尝试删除 if/else 以查看是否是问题所在,但没有任何区别。你认为这里的问题是什么?谢谢!

试试这个...我认为您没有正确设置选项。

$('[data-toggle="popover"]').popover({placement : 'bottom'});