【发布时间】:2015-05-27 01:50:36
【问题描述】:
当用户浏览器的宽度小于 1160 像素时,会设置媒体查询来折叠我网站的右侧边栏。他们可以通过单击一个小箭头将其取回,然后它将与内容重叠(绝对定位)。
无论如何,我使用以下 jQuery 来实现这一点:
$('.right_sidebar_preview').on('click', function() {
$('.right_sidebar_preview').css('display', 'none');
$('.right_sidebar').css('display', 'block');
});
$('.right_sidebar').on('click', function() {
$('.right_sidebar_preview').css('display', 'block');
$('.right_sidebar').css('display', 'none');
});
所以基本上我已经在浏览器大于 1160 像素并且侧边栏可见时隐藏了预览,在媒体查询中我设置了它,所以当它低于 1160 像素时,侧边栏变得不可见并且“侧边栏预览”是显示哪些用户可以点击放大。
CSS:
.right_sidebar {
width: 242px;
height: 100%;
background-color: #d8e1ef;
float: right;
position: relative;
}
.right_sidebar_preview {
display: none;
}
@media(max-width:1160px) {
.right_sidebar {
position: absolute;
right: 0;
display: none;
}
.right_sidebar_preview {
display: block;
background-color: #d8e1ef;
position: absolute;
right: 0;
width: 15px;
height: 100%;
}
}
我的问题是,当我使用上面的代码时,假设我们在小于 1160 像素的媒体查询中,我将打开侧边栏然后再次折叠它,当我将浏览器拉开返回时,它还关闭了大于 1160px 媒体查询的侧边栏。
那么我是否可以使用 .css() (或替代方法)来指向特定的媒体查询?
【问题讨论】:
标签: javascript jquery html css media-queries