【发布时间】:2016-02-28 22:16:45
【问题描述】:
是否可以让引导程序 (v3) 弹出框在页面加载开始时加载它的 div,并且在切换时不被销毁?
我在一个 div 中有一个弹出框内容:
<div id="popoverContent">
<h1>Stuff</h1>
<p>I'm in a popover!</p>
</div>
还有一个切换弹出框的按钮:
<a id="floating_tab" data-toggle="popover" data-placement="left">Button</a>
这是我处理按钮推送的 Javascript 代码:
<script>
var x = false;
$('[data-toggle=popover]').popover({
content: $('#popoverContent').html(),
html: true
}).click(function() {
if (x) {
$(this).popover('hide');
x = false;
}
else {
$(this).popover('show');
x = true;
}
});
</script>
问题是,当调用$(this).popover('show'); 时,会创建一个 div。检查元素(chrome)中会显示类似这样的内容:
<div class="popover fade left in" role="tooltip" id="popover460185" style="top: 430.5px; left: 2234px; display: block;"><div class="arrow" style="top: 50%;"></div><h3 class="popover-title" style="display: none;"></h3><div class="popover-content">
<h1>Stuff</h1>
<p>I'm in a popover!</p>
</div></div>
但是当再次单击该按钮时,整个 div 本身就会从页面中删除并消失。 是否可以在页面加载期间创建弹出框 div(虽然隐藏)并且可以在不删除 div 的情况下进行切换?
【问题讨论】:
-
为什么重要以及您要解决的具体问题是什么?
-
我正在尝试在 popoverContent div 中添加音频。当有人播放它时,它会继续播放,即使他们关闭了弹出框(或导航到另一个页面,我确实使用 AJAX)。但是当您关闭页面上的弹出框时,音频会停止播放。我需要一个解决方案来保持音频加载,即使弹出窗口关闭。
-
如果您导航到另一个页面,则无法继续播放音频。只能在单页应用中做到这一点
-
我已经让它处理不同页面的音频播放(ajax - mane-frame.com)。我只需要保持弹出框“加载”。
-
Bootstrap 不提供此功能。弹出框(它是工具提示的扩展)在每个
show调用上动态生成 - 目前不提供用于传递预定义 HTML 的解决方案 - 需要编写插件。hide方法使用jQuery.detach从 DOM 中删除元素。
标签: javascript jquery html css twitter-bootstrap