0

我有一个带有两个按钮“登录”和“注册”的启动页面。到目前为止,我设法获得的代码是: 1. 单击按钮时展开登录和注册表单 (div)。2. 如果其他表单已经可见,则隐藏它(一次只能看到一个表单,一次只有一个按钮处于“按下状态”)。3. 按下时更改按钮背景并且相应的面板可见。

这是到目前为止的代码:

$(function() {
                $('#login').click(function() {
                    $('.login').slideToggle('fast');
                    $('.register:visible').slideToggle('fast');
                    $("#register").css("background", "rgba(255,0,0,0.8)");
                    $("#login").css("background", "rgba(255,0,0,0.6)");
                    return false;
                });
                $('#register').click(function() {
                    $('.register').slideToggle('fast');
                    $('.login:visible').slideToggle('fast');
                    $("#login").css("background", "rgba(255,0,0,0.8)");
                    $("#register").css("background", "rgba(255,0,0,0.6)");
                    return false;
                });
            });

上面代码的问题是,当我隐藏两个面板时,其中一个按钮保持“按下状态” rgba(255,0,0,0.6)。我还想在按钮未按下时添加悬停效果,我该怎么做呢?

非常感谢你,我是 jquery 的新手,我正在努力..

4

1 回答 1

0

首先,我建议添加和删除 CSS 类,而不是直接更改 CSS 属性 - 它可能会清除一些错误,但不确定:$('#register').addClass('btnClicked');

您可以像这样添加悬停效果:

$('#login, #register').hover(function() {
    $(this).addClass('btnHover');
}, function() {
    $(this).removeClass('btnHover');
}

当然,如果你想保持你的风格,只需将悬停的 CSS 代码放在第一个函数中,然后在第二个函数中将其恢复为正常。

于 2013-04-24T15:49:16.220 回答