1

我正在研究 jQuery 库中的简单操作。

$('#hasAccount').click(function() {
        $('.authForm').slideDown(500, function() {
            if ($('.shippingAddress').is(':visible')) {
                $('.shippingAddress').slideUp(250);
            }
        });
});

$('#hasNotAccount').click(function() {
        $('.shippingAddress').slideDown(500, function() {
            if ($('.authForm').is(':visible')) {
                $('.authForm').slideUp(250);
            }
        });
});

这是代码工作:http: //jsfiddle.net/6tZQ2/2/

这很简单,但我想知道是否有任何解决方案可以将此脚本最小化为 1 个动作?

谢谢 :-)

4

5 回答 5

1

也许这个?

http://jsfiddle.net/6tZQ2/16/

于 2012-04-25T09:34:24.510 回答
0

您可以使用 slideToggle 并丢失 if 语句

于 2012-04-25T09:03:32.777 回答
0

来吧-尽管有数百万种方法可以做得更好/更好/更紧凑...这是我心目中最快的...:/

http://jsfiddle.net/neuroflux/6tZQ2/3/

[编辑]虽然 - 这是name基于属性的 - 所以最好用另一种方式来做:)

于 2012-04-25T09:05:29.700 回答
0

试试看,我不是 jquery 专家:

$('input[name="account"]').click(function(e) {
    if(e.target.id == 'hasAccount') {
        $('.authForm').slideDown(500, function() {
            if ($('.shippingAddress').is(':visible')) {
                $('.shippingAddress').slideUp(250);
            }
        });
    } else {
        $('.shippingAddress').slideDown(500, function() {
            if ($('.authForm').is(':visible')) {
                $('.authForm').slideUp(250);
            }
        });
    }
});
于 2012-04-25T09:07:53.753 回答
0

如何在更一般的 dom 中包含这两个功能。

于 2012-04-25T09:08:00.143 回答