如何让可折叠按钮仅针对移动设备显示
how can I have a collapsible button to show for mobile only?
对于大屏幕,我希望只显示列表而不显示可折叠按钮,而在移动设备上,我希望这个按钮像这样显示。我尝试在button
标签上放置hidden-lg
或visible-xs
,但它删除了大屏幕的整行。如何让可折叠按钮仅针对移动设备显示?提前感谢!
<button id="button" type="button" class="btn btn-primary" data-toggle="collapse" data-target="#demo">
<span class="glyphicon glyphicon-collapse-down"></span> Show
</button>
<div id="demo" class="collapse">
<ol class="list-group">
<li class="list-group-item">Warrior</li>
<li class="list-group-item">Adventurer</li>
<li class="list-group-item">Mage</li>
</ol>
</div>
自定义.js
$(function(){
$('#demo').on('hide.bs.collapse', function () {
$('#button').html('<span class="glyphicon glyphicon-collapse-down"></span> Show');
})
$('#demo').on('show.bs.collapse', function () {
$('#button').html('<span class="glyphicon glyphicon-collapse-up"></span> Hide');
})
})
我也试过
#demo{
display: none;
}
@media (min-width: @screen-md-min) {
#demo{
display: block;
}
}
@Deebs,我扩展了您的建议,因为我相信移动设备中的预期行为是隐藏#demo
div并在单击#button
时显示/隐藏。
// Pure JS
document.getElementById("button1").addEventListener("click", function() {
var disp = document.getElementById("demo1").style.display;
document.getElementById("demo1").style.display = disp === "" || disp == "none" ? "block" : "none";
this.innerHTML = disp === "" || disp === "none" ? "Hide" : "Show";
});
// jQuery
$("#button2").on("click", function() {
$("#demo2").toggle();
$("#button2").text( $("#demo2").css("display") === "block" ? "Hide" : "Show" );
});
#demo1, #demo2 {
display:none;
}
#button1, #button2 {
display:block;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<p><strong>Pure JS:</strong></p>
<button id="button1" type="button" class="btn btn-primary" data-toggle="collapse" data-target="#demo"> <span class="glyphicon glyphicon-collapse-down"></span> Show</button>
<div id="demo1" class="collapse">
<ol class="list-group">
<li class="list-group-item">Warrior</li>
<li class="list-group-item">Adventurer</li>
<li class="list-group-item">Mage</li>
</ol>
</div>
<p><strong>jQuery:</strong></p>
<button id="button2" type="button" class="btn btn-primary" data-toggle="collapse" data-target="#demo"> <span class="glyphicon glyphicon-collapse-down"></span> Show</button>
<div id="demo2" class="collapse">
<ol class="list-group">
<li class="list-group-item">Warrior</li>
<li class="list-group-item">Adventurer</li>
<li class="list-group-item">Mage</li>
</ol>
</div>
你问题的措辞有点令人困惑......您的媒体查询看起来很时髦。 尝试
#demo{
display: none;
}
@media screen and (min-width: 780px) {
#demo{
display: block;
}
}
这将使演示div 隐藏在小于 780px 的屏幕上,并在宽度超过 780px 的屏幕上可见。 如果要隐藏/显示按钮本身,还必须添加该CSS。
相关文章:
- 如何在悬停时显示文本而不移动页面上的内容
- 以下数据布局在设置显示上向上移动:无
- 在移动浏览器上显示大型文本文件
- IE(移动设备)在触摸时不显示子项
- 如何移动PIXI显示对象
- 当我将子项从一个父项移动/复制到另一个父级时,如何重新计算显示
- 将页面内容向左移动时显示/隐藏右侧面板
- 尝试在画布中对形状进行动画处理时,它会显示,但不移动
- jQuery移动显示页面5秒钟,然后重定向
- Google Maps Javascript API v3 地图显示在桌面浏览器上,但不会显示在移动浏览器上
- 显示移动窗口时引导导航栏中的 atach 搜索栏
- iPhone锚点,scrollTop,scrollTo显示移动按钮栏,但不会滚动或跳到锚点
- 删除的DOM元素仍然显示在移动safari(iOS 5.1)中
- 为什么 Jquery 移动显示移动友好在桌面浏览器上看起来很友好
- 在 JS 中重置 HTML 范围输入不会移动显示的滑块
- Dojo移动显示滚动条
- jQuery移动显示双按钮
- 使用jquery移动显示地图位置,使用经度和纬度
- JQuery移动显示空白
- 自动高度虚拟列表为移动显示大列表