gpt4 book ai didi

javascript - jQuery window.width 'if' 'else if' 'else' 语句不工作

转载 作者:太空宇宙 更新时间:2023-11-03 20:44:49 25 4
gpt4 key购买 nike

function changeDrop() {
var windowSize = $(window).width();

if (windowSize > 450) {

$('.menu-361').hover(
function() {
$('.menu-361 ul').show();
},

function() {
$('.menu-361 ul').hide();
});

console.log("screen width is greater than 450px");

}
else if (windowSize <= 450) {

$('.menu-361').on('hover', function () {
//mousehover
} , function(){
//mouseout
} );


$('#dropbutton').click(function() {
$('.menu-361 ul').toggle();
$('#dropbutton p').toggle();
});

console.log("screen width is less than 450px");
}

else {}

}

changeDrop();
$(window).resize(changeDrop);

在 if 语句为真之后,我认为代码位被加载到内存中。当 window.width <= 450 时,来自 if 语句或 > 450 的代码仍然运行。知道如何进行这项工作吗?

http://tidalbania.com/tidnew/

演示中的链接在真实站点上!

如果您需要 fiddle ,我可以更新问题。

最佳答案

正如其他人所提到的,您不应该在每次更改时都绑定(bind)事件处理程序。这应该足够了:

$('.menu-361').hover(hoverInOut);

$('#dropbutton').click(function() {
$('.menu-361 ul').toggle();
$('#dropbutton p').toggle();
});

function hoverInOut(event) {
var windowSize = $(window).width();
if (windowSize > 450) {
if(event.type == "mouseenter")
$('.menu-361 ul').show();
else
$('.menu-361 ul').hide();
}
}

关于javascript - jQuery window.width 'if' 'else if' 'else' 语句不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22413380/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com