当我在 Bootstrap 的 Popover 中使用 Bootstrap 的标签页时,似乎无法正常工作。
具体情况如下:
1. Popover opens
2. Active tab on click changes
3. Tab content is not changing <-- PROBLEM
选项卡已正确创建,如果您在弹出窗口之外尝试它们,则可以正常使用。
<a class="btn" id="btnPopover" href="#">Launch Popover</a>
<div class="tabbable hide" id="popoverContent">
<ul class="nav nav-tabs">
<li class="tab active"><a href="#tab1" data-toggle="tab">Tab 1</a></li>
<li class="tab"><a href="#tab2" data-toggle="tab">Tab 2</a></li>
<li class="tab"><a href="#tab3" data-toggle="tab">Tab 3</a></li>
</ul>
<div class="tab-content" style="padding-top: 15px">
<div class="tab-pane active" id="tab1">Tab Content 1</div>
<div class="tab-pane" id="tab2">Tab Content 2</div>
<div class="tab-pane" id="tab3">Tab Content 3</div>
</div>
$(function () {
$("#btnPopover").popover({
html: true,
trigger: 'click',
title: "Title",
placement: "bottom",
content: $("#popoverContent").html()
});
});
在这种情况下,Bootstrap似乎会复制元素。我打算在内容选项卡中使用更多的JavaScript库和插件,但这几乎是不可能的,除非有人提供一个可靠的解决方案。我真的认为这是一个有效的Bootstrap错误。
jsfiddle演示:http://jsfiddle.net/iboros/nCfBf/
content
选项记录为标记(或由函数生成的标记)。它不直接支持使用页面中已有的元素。您的代码通过使用现有的 DOM 元素,获取它们的html
并提供给 Bootstrap 用于内容而复制了这些元素。解决方案非常简单:只需删除您要复制的元素(如 @PSL 所示)。 - T.J. Crowder