Javascript 宽度更改时隐藏元素
我有这个问题,因为当窗口宽度超过766px时,我正在尝试隐藏菜单。这是我的代码,但不是工作 HTML 但当我在677px上点击汉堡和菜单幻灯片,然后将窗口调整到766px以上时,一切都正常。感谢您的帮助问题:- 窗口宽度检查代码不会在每次调整窗口大小时运行 解决方案:- 使用方法如下:-Javascript 宽度更改时隐藏元素,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有这个问题,因为当窗口宽度超过766px时,我正在尝试隐藏菜单。这是我的代码,但不是工作 HTML 但当我在677px上点击汉堡和菜单幻灯片,然后将窗口调整到766px以上时,一切都正常。感谢您的帮助问题:- 窗口宽度检查代码不会在每次调整窗口大小时运行 解决方案:- 使用方法如下:- $(window).resize(function(){ if($(window).width() > 766){ $('.submenu').hide(); }else{ con
$(window).resize(function(){
if($(window).width() > 766){
$('.submenu').hide();
}else{
console.log('halo');
//add $('.submenu').show(); to show menu
}
});
注意:-其余代码正常。问题:-
窗口宽度检查代码不会在每次调整窗口大小时运行
解决方案:-
使用方法如下:-
$(window).resize(function(){
if($(window).width() > 766){
$('.submenu').hide();
}else{
console.log('halo');
//add $('.submenu').show(); to show menu
}
});
注意:-代码的其余部分还可以。您可以使用CSS媒体查询,但由于您需要jQuery。。。在调整窗口大小时,需要检查窗口的宽度。使用您的代码,它只运行一次
$('.burger-menu').click(function(){
$(this).toggleClass('open');
});
//Menu list
$('.burger-menu').click(function(){
$('.submenu').slideToggle();
});
$(window).resize(function(){
if($(window).width() > 766){
$('.submenu').hide();
}else {
console.log('halo');
};
}
您可以使用CSS媒体查询,但由于您需要jQuery。。。在调整窗口大小时,需要检查窗口的宽度。使用您的代码,它只运行一次
$('.burger-menu').click(function(){
$(this).toggleClass('open');
});
//Menu list
$('.burger-menu').click(function(){
$('.submenu').slideToggle();
});
$(window).resize(function(){
if($(window).width() > 766){
$('.submenu').hide();
}else {
console.log('halo');
};
}
要达到预期效果,请使用以下CSS
@media (min-width: 766px) {
.submenu {
display: none;
}
}
代码笔-
其他选项使用Jquery,进行以下更改以调整大小和页面加载
要达到预期效果,请使用下面的CSS
@media (min-width: 766px) {
.submenu {
display: none;
}
}
代码笔-
其他选项使用Jquery,进行以下更改以调整大小和页面加载
您应该在jquery中调用resize函数 //隐藏div的函数 函数hideDiv(){
您应该在jquery中调用resize函数 //隐藏div的函数 函数hideDiv(){
使用调整大小事件您不能使用CSS吗?像这样…
@媒体屏幕和(最小宽度:767px){.class{display:none}}
使用调整大小事件您不能使用CSS吗?像这样…@媒体屏幕和(最小宽度:767px){.class{display:none}
谢谢!我尝试这个:)谢谢!我尝试这个:)@Bartas,其他部分应该有$('.submenu').show(),否则,如果宽度<766px@Bartas,否则,如果宽度<766px,它将只隐藏而不显示
/* always assume on smaller screen first */
#floatdiv {
display:none;
}
/* if screen size gets wider than 1024 */
@media screen and (min-width:1024px){
#floatdiv {
display:block;
}
}