我目前有位于一个ul
标签为li
的缩略图列表。jQuery的 - 每个功能
我现在用的是Galleria图片库,但我有我的画廊超过六幅图像,所以我在想实现一个网页系统。
我所试图做的是以下几点:
我有图片,row1
的一排,当你点击2 row1
页面上应该隐藏使用此功能hide("slide")
,毕竟他们都躲在,row2
应显示使用show("slide")
,但发生在同一时间,这些hide
和show
功能,我想hide
功能来完成show
函数执行之前,这里是我的代码:
$("a[href^='#']").click(function() {
if (($(this).attr("href") == "#") && ($(this).attr("rel") != "gallery") && ($(this).attr("href").indexOf("row") < 0)) {
return false;
}
else if ($(this).attr("href").indexOf("row") < 0) {
$.scrollTo($(this).attr("href"),1000);
return false;
} else {
var href = $(this).attr("href");
href = href.replace("#","");
$("ul.galleria li").each(function() {
if ($(this).is(":visible")) {
$(this).hide("slide");
}
}).;
$("ul.galleria li."+href).each(function() {
$(this).show("slide", 800);
});
return false;
}
});
如何在show函数等待继续时执行hide函数?
//编辑
我已经改变了我的代码如下:
$("ul.galleria li:visible").hide("clip", {direction : "horizontal"},function(){
$("ul.galleria li."+href).show("clip", {direction : "horizontal"}, 800);
});
但现在,展会功能运行完全一样的li
的,这是上可见数的次数之前的'页面'。我怎样才能让这个函数只执行一次?
谢谢,这正是我想要的,但是'show'功能究竟执行了六次,你有什么想法,为什么? – 2009-12-19 08:39:33
你可能需要放一个stop(),因为它建立了一个队列(你有六个可见元素吧?)。我会更新代码。 – pixeline 2009-12-19 15:04:13