因此,我正在使用 Twitter 的 Bootstrap 创建一个带有选项卡式内容的页面,但我的起始活动 div 的内容总是与其他选项卡的内容不同。例如,我在不同的选项卡中使用 highcharts.js 放入图表,但活动的总是正确显示,而其他的显示不正确。
看看下面的例子:
<div class = "row-fluid">
<div class = "span9">
<div class = "row-fluid">
<h3>Test</h3>
<ul class="nav nav-tabs">
<li class = "active">
<a data-toggle = "tab" href = "#one">One</a>
</li>
<li><a data-toggle = "tab" href = "#two">Two</a></li>
<li><a data-toggle = "tab" href = "#three">Three</a></li>
</ul>
<div class="tab-content">
<div class="tab-pane active" id="one" >
<h4>One</h4>
<div id = "container1"></div>
<script type = "text/javascript">
$(function () {
$('#container1').highcharts({
chart: {
},
xAxis: {
categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
},
series: [{
data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]
}]
});
});
</script>
</div>
<div class="tab-pane" id="two" >
<h4>Two</h4>
<div id = "container2"></div>
<script type = "text/javascript">
$(function () {
$('#container2').highcharts({
chart: {
},
xAxis: {
categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
},
series: [{
data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]
}]
});
});
</script>
</div>
<div class="tab-pane" id="three" >
<h4>Three</h4>
<div id = "container3"></div>
<script type = "text/javascript">
$(function () {
$('#container3').highcharts({
chart: {
},
xAxis: {
categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
},
series: [{
data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]
}]
});
});
</script>
</div>
</div>
</div>
</div>
<div class = "span3">
<p>Here is the content on my sidebar</p>
</div>
</div>
在这种情况下,在页面加载时切换活动选项卡会使该图表看起来对我来说是正确的,但其余的总是一直延伸到边缘(在我的数据的情况下,我只想填满 span9 的空间div. 在这种情况下,我只是使用了虚拟图表,但这是相同的想法。
这是一个 JSFiddle:http: //jsfiddle.net/dw9tn/
我对你们所有人的问题是:
1.) 这只是我吗?
2.) 当标签被激活时到底发生了什么?查看 bootstrap css,这似乎处理 display: none 和 display: block,但我不太了解在这种情况下它是如何工作的。
3.) 这是 highcharts 问题还是 bootstrap 问题?我注意到这发生在我身上的非 highchart 元素(比如在侧边栏中显示推文),所以我倾向于 bootstrap。
4.) 是否有任何解决方案可以使所有内容保持一致?
多谢你们!