1

此代码切换 frm01 的可见性

$(document).ready(function () {
    $("#reg").click(function () {
        if ($("#frm01").is(":visible")) $("#frm01").hide("slide", {
            direction: "down"
        }, 1000);
        else $("#frm01").show("slide", {
            direction: "down"
        }, 1000);
    });
});

但是底层 div(div bellow frm01)会瞬间向上/向下移动,没有滑动效果。
我也想使用幻灯片效果来移动它。

4

1 回答 1

1

如果它是一个单独的 div,为什么不简单地将该 div 添加到 jquery 选择器中呢?

$(document).ready(function() {
    $("#reg").click(function () {
        if ($("#frm01").is(":visible"))
            $("#frm01,#otherdiv").hide("slide", { direction: "down" }, 1000);
        else
            $("#frm01,#otherdiv").show("slide", { direction: "down" }, 1000);
    });
});

或者,如果您只想为 div 的移动设置动画,请使用 jquery .animate() 函数。

$(document).ready(function() {
    $("#reg").click(function () {
        if ($("#frm01").is(":visible")) {
            $("#frm01").hide("slide", { direction: "down" }, 1000);
            $("#otherdiv").animate({margin-top: "50px"}, 1000);
        } else {
            $("#frm01").show("slide", { direction: "down" }, 1000);
            $("#otherdiv").animate({margin-top: "100px"}, 1000);
        }
    });
});

更多关于动画 CSS 变化的信息在这里

于 2012-07-16T07:41:21.410 回答