很高兴认识你们。我是新手,但有点过于雄心勃勃。
我在跳过一些角落后做了一个秀/隐藏Div,虽然它有效,但它仍然很草率。有意延迟是因为我无法回调工作。如果内容框中有不可能的文本数量,这可能是一个问题...更不用说,学习未来的项目也不会有什么坏处。
所以我分享这个,要求批评,因为它非常老套,并且询问如何让回调首先起作用。 (当然,如果需要,可以非常自由地使用代码。)
Here是小提琴。
$("#open").click(function () {
$(this).hide("fast");
$("#content").delay(50).show("fold");
$("#close-bottom,#close-top").delay(800).fadeIn(0);
});
$("#close-bottom,#close-top").click(function () {
$("#close-bottom,#close-top").hide("fast");
$("#content").hide("fold");
$("#open").delay(300).fadeIn(0);
});
答案 0 :(得分:0)
您可以在"fold"
之后将回调添加为第二个参数:
$("#open").click(function () {
$(this).hide("fast");
$("#content").show("fold", function() {
$("#close-bottom,#close-top").fadeIn(0);
});
});
$("#close-bottom,#close-top").click(function () {
$("#close-bottom,#close-top").hide("fast");
$("#content").hide("fold", function() {
$("#open").fadeIn(0);
});
});
根据.show或.hide文档,jQuery 1.4.3中添加了使用.show( [duration ] [, easing ] [, complete ] )
的方法调用,并支持仅使用easing
和{{1}进行调用}(这将保持默认的complete callback function
持续时间)