Javascript jQuery-运行函数以替换常用代码
我有下面的代码。我想用一行代码替换突出显示的部分,这行代码将运行所有这些代码。这背后的原因是因为我经常重复使用这段代码,并且可以通过复制和粘贴一行代码来节省大量时间Javascript jQuery-运行函数以替换常用代码,javascript,jquery,Javascript,Jquery,我有下面的代码。我想用一行代码替换突出显示的部分,这行代码将运行所有这些代码。这背后的原因是因为我经常重复使用这段代码,并且可以通过复制和粘贴一行代码来节省大量时间 $(".menu-item-1").show(); $(".menu-item-2").show(); $(".menu-item-3").show(); $(".menu-item-4").show(); $(".menu-item-5").show(); $(".menu-item-6").show(); 写这篇文章的最好方法
$(".menu-item-1").show();
$(".menu-item-2").show();
$(".menu-item-3").show();
$(".menu-item-4").show();
$(".menu-item-5").show();
$(".menu-item-6").show();
写这篇文章的最好方法是什么
这是我想用一行代码替换的部分
$(".menu-item-1").show();
$(".menu-item-2").show();
$(".menu-item-3").show();
$(".menu-item-4").show();
$(".menu-item-5").show();
$(".menu-item-6").show();
以及下面的全部代码
if (index == 2) {
$("#prev").show();
$("#next").show();
$(".menu-item-1").show();
$(".menu-item-2").show();
$(".menu-item-3").show();
$(".menu-item-4").show();
$(".menu-item-5").show();
$(".menu-item-6").show();
$("#p3-1").delay(1000).fadeIn("slow", function () {
$("#p3-2").delay(500).fadeIn("slow", function () {
$("#p3-3").delay(500).fadeIn("slow", function () {
$("#p3-4").delay(500).fadeIn("slow", function () {
$("#p3-5").delay(500).fadeIn("slow", function () {
$("#p3-6").delay(500).fadeIn("slow", function () {
$("#p3-7").delay(500).fadeIn("slow")
$("#next").show();
});
});
});
});
});
});
}
应该是
$(".menu-item-1, .menu-item-2, .menu-item-3, .menu-item-4, .menu-item-5, .menu-item-6").show();
jQuery允许您对应用相同的效果
应该是
$(".menu-item-1, .menu-item-2, .menu-item-3, .menu-item-4, .menu-item-5, .menu-item-6").show();
jQuery允许您对应用相同的效果。这样可以吗
$(".menu-item-1, .menu-item-2, .menu-item-3, .menu-item-4, .menu-item-5").show();
这样行吗
$(".menu-item-1, .menu-item-2, .menu-item-3, .menu-item-4, .menu-item-5").show();
尝试:
尝试:
对于问题的第一部分,您可以在逗号分隔的列表中使用多个选择器,就像在css和jquery中一样:
$(".menu-item-1, .menu-item-2, .menu-item-3, .menu-item-4, .menu-item-5, .menu-item-6").show();
对于整个代码部分,您可以尝试使用一个递归函数,该函数在complete上为选择器调用一个增加的参数,如下所示(这可能包含语法错误):
因此,您的整个代码:
if (index == 2) {
$("#prev, #next, .menu-item-1, .menu-item-2, .menu-item-3, .menu-item-4, .menu-item-5, .menu-item-6").show();
var showPart = function(item)
{
var delay = 500;
if(item == 1)
{
delay = 1000;
}
else if(item >= 6)
{
$("#p3-7").delay(500).fadeIn("slow")
$("#next").show();
return;
}
$("#p3-"+item).delay(1000).fadeIn("slow", function () {
showPart(++item);
});
}
showPart(1);
}
对于问题的第一部分,您可以在逗号分隔的列表中使用多个选择器,就像在css和jquery中一样:
$(".menu-item-1, .menu-item-2, .menu-item-3, .menu-item-4, .menu-item-5, .menu-item-6").show();
对于整个代码部分,您可以尝试使用一个递归函数,该函数在complete上为选择器调用一个增加的参数,如下所示(这可能包含语法错误):
因此,您的整个代码:
if (index == 2) {
$("#prev, #next, .menu-item-1, .menu-item-2, .menu-item-3, .menu-item-4, .menu-item-5, .menu-item-6").show();
var showPart = function(item)
{
var delay = 500;
if(item == 1)
{
delay = 1000;
}
else if(item >= 6)
{
$("#p3-7").delay(500).fadeIn("slow")
$("#next").show();
return;
}
$("#p3-"+item).delay(1000).fadeIn("slow", function () {
showPart(++item);
});
}
showPart(1);
}
您真正应该做的是向这些元素添加一个公共类;e、 g.
菜单项
,做$('.menu item')。show()
这是一个很好的观点,马特,我认为这可能是最好的方法谢谢大家的回答,但我只能给出1个正确的答案。你真正应该做的是为这些元素添加一个公共类;e、 g.菜单项
,做$('.menu item')。show()
这是一个很好的观点,马特,我认为这可能是最好的方法谢谢大家的回答,但我只能给出一个正确答案