Bootstrap按钮组显示/隐藏Div
问题描述:
我有一个Bootstrap按钮组,它具有2个按钮(JSON和XML),JSON在页面加载时处于活动状态。按下XML按钮将自动改变焦点。Bootstrap按钮组显示/隐藏Div
现在,我想为这些按钮添加一些行为,以便单击XML按钮隐藏error-json
pre元素并显示error-xml
pre元素。
是否有一个Bootstrap-native的方式来实现这一目标?
<div class="btn-group">
<button class="btn btn-default" autofocus="true">JSON</button>
<button class="btn btn-default">XML</button>
</div>
<pre id="error-json" class="hidden"><code class="language-json">{
"ErrorCode": STATUS_CODE,
"Description": ERROR_MSG
}</code></pre>
<pre id="error-xml"><code class="language-xml"><error>
<ErrorCode>STATUS_CODE</ErrorCode>
<Description>ERROR_MSG</Description>
</error>
</code></pre>
答
$("#error-xml").hide();
$(".btn").click(function() {
\t var id = $(this).attr("id");
if(id == "json"){
$(this).attr("autofocus",true).siblings().attr("autofocus",false);
\t $("#error-xml").hide();
\t $("#error-json").show();
}else{
$(this).attr("autofocus",true).siblings().attr("autofocus",false);
\t $("#error-json").hide();
\t $("#error-xml").show();
}
});
:focus{
outline: 1px solid blue;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<div class="btn-group">
<button class="btn btn-default" id="json" autofocus="autofocus">JSON</button>
<button class="btn btn-default" id="xml">XML</button>
</div>
<pre id="error-json" class="hidden"><code class="language-json">{
"ErrorCode": STATUS_CODE,
"Description": ERROR_MSG
}</code></pre>
<pre id="error-xml"><code class="language-xml"><error>
<ErrorCode>STATUS_CODE</ErrorCode>
<Description>ERROR_MSG</Description>
</error>
</code></pre>
答
我认为这可以用css依赖来完成。您可以使用css选择器#error-json + #error-xml { /*something here*/ }
引导程序具有内置前类以显示/隐藏元素。您的文档中发现的类: http://getbootstrap.com/css/#helper-classes-show-hide
也许这线程帮助了: On a CSS hover event, can I change another div's styling?
为什么你不想使用的JavaScript/jQuery来添加所需的行为吗?
问候