在一定宽度下停止滚动菜单
Stop scroll menu under some width
所以,我有一个菜单,它会在特定时间点与我的网站一起滚动。
但我也想在我的网站宽度为 768 像素时停止它。
我试试这个
$(window).scroll(function() {
if ($(window).width() < 760)
{
$('#menu').css({'position' : 'absolute'});
}
});
也可以这样:
$(function() {
if ( $(window).width() < 760) {
$('#menu').css({'position' : 'relative'});
}
});
两次尝试均失败。但是对其中任何一个进行改进有用吗?
也许这有帮助。这是让我的菜单滚动的代码。
$(function() {
$(window).scroll(function()
{
var topo = $('#topo').height(); // altura do topo
var rodape = $('#rodape').height(); // altura do rodape
var scrollTop = $(window).scrollTop(); // qto foi rolado a barra
var tamPagina = $(document).height(); // altura da p?gina
if(scrollTop > topo){
$('#menu').css({'position' : 'fixed', 'top' : '0'});
}else{
$('#menu').css({'position' : 'relative', 'margin-top' : 0});
}
});
});
如果您想要有点 'responsive' 的设计,请使用 media-queries 和 'breakpoints' - 您在这里使用 jquery 做的工作太多了..
在本例中,您将断点标识为“768px-width”。
所以不要使用 jquery 来查找 window 宽度,而是像这样使用 css
#menu{
height:10px; // first define your menu;
}
@media (max-width: 769px) {
#menu {
position: fixed; // header does not move at this width
// then you can add a media query for that size, notice i used 769px, so this includes 768px and below;
}
}
var something = $('.class').offset();
something = something.top;
$(function() {
if ( $(window).width() < 760 || $(window).scrollTop() >= something) {
$('#menu').css({'position' : 'fixed'});
}
});
查看此示例,了解如何制作您要问的粘性导航。
http://codepen.io/senff/pen/ayGvD
另外,|| = 或 if 条件。
所以,我有一个菜单,它会在特定时间点与我的网站一起滚动。 但我也想在我的网站宽度为 768 像素时停止它。
我试试这个
$(window).scroll(function() {
if ($(window).width() < 760)
{
$('#menu').css({'position' : 'absolute'});
}
});
也可以这样:
$(function() {
if ( $(window).width() < 760) {
$('#menu').css({'position' : 'relative'});
}
});
两次尝试均失败。但是对其中任何一个进行改进有用吗?
也许这有帮助。这是让我的菜单滚动的代码。
$(function() {
$(window).scroll(function()
{
var topo = $('#topo').height(); // altura do topo
var rodape = $('#rodape').height(); // altura do rodape
var scrollTop = $(window).scrollTop(); // qto foi rolado a barra
var tamPagina = $(document).height(); // altura da p?gina
if(scrollTop > topo){
$('#menu').css({'position' : 'fixed', 'top' : '0'});
}else{
$('#menu').css({'position' : 'relative', 'margin-top' : 0});
}
});
});
如果您想要有点 'responsive' 的设计,请使用 media-queries 和 'breakpoints' - 您在这里使用 jquery 做的工作太多了..
在本例中,您将断点标识为“768px-width”。
所以不要使用 jquery 来查找 window 宽度,而是像这样使用 css
#menu{
height:10px; // first define your menu;
}
@media (max-width: 769px) {
#menu {
position: fixed; // header does not move at this width
// then you can add a media query for that size, notice i used 769px, so this includes 768px and below;
}
}
var something = $('.class').offset();
something = something.top;
$(function() {
if ( $(window).width() < 760 || $(window).scrollTop() >= something) {
$('#menu').css({'position' : 'fixed'});
}
});
查看此示例,了解如何制作您要问的粘性导航。 http://codepen.io/senff/pen/ayGvD
另外,|| = 或 if 条件。