我正在尝试为我的网站制作一个响应式过滤器小部件。
#filter-widget 显示屏幕尺寸大于767px时屏幕尺寸小于767px(.col-sm-3)时隐藏。
显示文件管理器按钮显示屏幕尺寸小于767px。用户点击此按钮后,再次显示#filter-widget 。
我的预期结果如下:
我的代码如下:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<html>
<head>
<title>Eat Your Food</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
</head>
<body>
<div class="container-fluid">
<div class="col-xs-12 hidden-sm hidden-md hidden-lg">
<a href="#filter-widget" class="btn btn-success" data-toggle="collapse">Show Filter v</a>
</div>
<div id="filter" class="col-sm-3">
<div id="filter-widget" class="collapse in">
<form class="form-horizontal">
<h3><b>Category</b></h3>
<div class="form-group">
<div class="checkbox">
<label><input type="checkbox" value="vegetable" />Vegetable</label>
</div>
<div class="checkbox">
<label><input type="checkbox" value="meat" />Meat</label>
</div>
<div class="checkbox">
<label><input type="checkbox" value="grains" />Grains</label>
</div>
</div>
</form>
</div>
</div>
<!-- Result -->
<div class="col-sm-9">
<h3>Filted Result Is Here.</h3>
<p>ResultResultResultResultResult</p>
</div>
</div>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
</body>
</html>
我想在小屏幕中隐藏#filter-widget 作为默认值,因此我将<div id="filter" class="col-sm-3">
更改为<div id="filter" class="col-sm-3 hidden-xs">
。但是,显示过滤器按钮无法显示#filter-widget 。
当屏幕小于767像素时,如何修改我的代码以让显示过滤器隐藏/显示 #filter-widget 。
我的代码有问题吗?
非常感谢!
答案 0 :(得分:1)
以下是适合您的工作示例。请从代码中删除hidden-
类
1,CSS
#filter-widget{display:block}
.show-filter-button-class{display:none}
@media screen and (max-width: 767px) {
#filter-widget{display:none}
.show-filter-button-class{display:block}
}
2,JS
<script>
$('body).on('click','.show-filter-button-class',function{
$('#filter-widget').show();
}
</script>