gpt4 book ai didi

javascript - 使 jQuery 代码更简单

转载 作者:数据小太阳 更新时间:2023-10-29 05:51:56 26 4
gpt4 key购买 nike

我想知道是否有人对如何使我的代码更精简以使其不那么沉重有任何想法。

 var t;
$(".sn-fresh").mouseenter(function() {
$(".um-cat").hide();
clearTimeout(t);
$("#ultra-menu, #um-fresh").fadeIn(600);
});

$(".sn-salt").mouseenter(function() {
$(".um-cat").hide();
clearTimeout(t);
$("#ultra-menu, #um-salt").fadeIn(600);
});

$(".sn-shoot").mouseenter(function() {
$(".um-cat").hide();
clearTimeout(t);
$("#ultra-menu, #um-shoot").fadeIn(600);
});

$(".sn-eques").mouseenter(function() {
$(".um-cat").hide();
clearTimeout(t);
$("#ultra-menu, #um-eques").fadeIn(600);
});

$(".sn-cloth").mouseenter(function() {
$(".um-cat").hide();
clearTimeout(t);
$("#ultra-menu, #um-cloth").fadeIn(600);
});

$(".sn-brand").mouseenter(function() {
$(".um-cat").hide();
clearTimeout(t);
$("#ultra-menu, #um-brand").fadeIn(600);
});

$("#ultra-menu").mouseleave(function() {
clearTimeout(t);
t = setTimeout(function() {
$("#ultra-menu, .um-cat").fadeOut(600);
}, 300);
});
$("#main-navigation a").mouseleave(function() {
clearTimeout(t);
t = setTimeout(function() {
$("#ultra-menu, .um-cat").fadeOut(600);
}, 300);
});
$("#ultra-menu").mouseenter(function() {
clearTimeout(t);
$("#ultra-menu").fadeIn(600);
});

最佳答案

您可以通过消除重复的代码使其更干:

var names = ["fresh","salt","shoot","eques","cloth","brand"];

names.forEach( function( name ){
$(".sn-"+name).mouseenter(function() {
$(".um-cat").hide();
clearTimeout(t);
$("#ultra-menu, #um-" + name ).fadeIn(600);
});
});

或者:

$("#ultra-menu, #main-navigation a").mouseleave(function() {
clearTimeout(t);
t = setTimeout(function() {
$("#ultra-menu, .um-cat").fadeOut(600);
}, 300);
});

或:

var menus = [ "#ultra-menu", "#main-navigation a" ];

menus.forEach( function( menu ){
$(menu).mouseleave(function() {
clearTimeout(t);
t = setTimeout(function() {
$("#ultra-menu, .um-cat").fadeOut(600);
}, 300);
});
});

关于javascript - 使 jQuery 代码更简单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31507197/

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