我一直试图让这个函数现在工作一段时间。我有11个不同的div默认隐藏。每个人都有一个“触发”按钮,应该让他们弹开。我能够为每个特定的div使用更长的一系列函数来实现这个功能(最终大约有175行代码!)。我想把它压缩成一个单一的功能,它会做同样的事情,即:触发器1被点击 - div 1打开/触发器1再次点击,div 1关闭等等等。试图用Jquery切换多个DIV的
这是我的脚本现在
$(document).ready(function() {
$("[class^='ShowVehicles']").toggle(function() {
alert("click happened");
$("[class^='HiddenVehicles']").slideDown(1000);
},
function() {
$("[class^='HiddenVehicles']").slideUp(1000);
});
});
它目前打开所有“HiddenVehicles”divs,我需要使它更具体。我对jquery相当陌生,所以我几乎没有想法。在此先感谢你们!
编辑 - 感谢所有帮助家伙,这里是我想出了解决方案:
$(document).ready(function() {
$("div.WrapIt").toggle(
function(){ $(".HiddenVehicles", this).slideDown(1000);
$("img.imgSwap" , this).attr("src","assets/images/SelectBySize/SelectBySize_HideAll.gif");
},
function(){ $(".HiddenVehicles", this).slideUp(1000);
$("img.imgSwap" , this).attr("src","assets/images/SelectBySize/SelectBySize_ShowAll.gif")
}
);
$(".ShowEveryThing").toggle(
function() { $(".WrapIt .HiddenVehicles").slideDown(1000);
$("img.imgSwap").attr("src","assets/images/SelectBySize/SelectBySize_HideAll.gif");
$("img.buttonSwap").attr("src","assets/images/SelectBySize/SelectBySize_HideBtn.gif");
},
function(){ $(".WrapIt .HiddenVehicles").slideUp(1000);
$("img.imgSwap").attr("src","assets/images/SelectBySize/SelectBySize_ShowAll.gif");
$("img.buttonSwap").attr("src","assets/images/SelectBySize/SelectBySize_ShowBtn.gif");
});
});
我创建了一个包装的div并有功能火被点击时股利。我还包括一些图像交换和显示全部功能。
我不相信最接近()会在这种情况下工作,因为它只能返回父元素,而不是兄弟姐妹。 – 2009-11-20 16:05:22