JavaScript JQuery设置超时
我是JavaScript和JQuery的初学者,我试着做一些练习JavaScript JQuery设置超时,javascript,jquery,Javascript,Jquery,我是JavaScript和JQuery的初学者,我试着做一些练习 var activetab = 0; $("li").click(function () { $("#tabs-"+activetab).hide("slide", { direction: "left" }, 1000); $("li").eq(activetab).css('background-color','white'); var index = $("li").index(this); $("spa
var activetab = 0;
$("li").click(function () {
$("#tabs-"+activetab).hide("slide", { direction: "left" }, 1000);
$("li").eq(activetab).css('background-color','white');
var index = $("li").index(this);
$("span").text(index);
$("li").eq(index).css('background-color','red');
$("#tabs-"+index).show("slide", { direction: "left" }, 1000);
activetab = index;
});
这是我的小提琴:
问题是我希望show方法在一段时间后启动,这样当前一个元素被隐藏时,新的元素就会出现,
尝试使用setTimeout,但不起作用,有什么想法吗
非常感谢您,您必须使用回调:
$("#tabs-" + activetab).hide("slide", {
direction: "left"
}, 1000, function(){
// this will be called after the element is completely hidden.
});
参考:您可以使用方法的
完成回调来启动.show()
动画
$("#tabs-" + activetab).hide("slide", {
direction: "left"
}, 1000, function(){
$("#tabs-" + index).show("slide", {
direction: "left"
}, 1000);
activetab = index;
});
这样,您就不需要使用setTimeout
,而且同步是无缝的
您可以将完整的回调传递给.hide
。请看一下文档:。这就是我现在的想法,我想试试这个,然后发布一些更新。我相信你想链接到。注意,jQuery的.hide()
不提供相同的功能