-6

ログインエリア(以下のコード)でログインボタンのクリックをオンに切り替えたい。また、ログイン領域の外側をクリックしたときにログイン領域を非表示にする必要がありますが、ログインボタンでは非表示にする必要があります。

<button id="loginBtn">Login</button>

<div id="loginArea">
   <!-- here is login form -->
</div>

どうすればこれを達成できますか?

4

3 に答える 3

2

使用:

$('body').on('click', '#loginBtn', function(){
    $('#loginArea').show();
});

ログインが表示されますが、ログインの外側をクリックすると、ログインが削除されます。

$(document).on('click', 'body:not(#loginArea)', function(){
    $('#loginArea').hide();
});
于 2013-03-12T13:31:22.473 に答える
1
$(function() {
    $('#loginBtn, #loginArea').on('click', function(e) {
        $('#loginArea').show();
        e.stopPropagation();
    });
    $('body').on('click', function() {
        $('#loginArea').hide();
    });
});

クリックがログイン領域内またはボタン上にある場合、イベントはログイン領域を非表示にする2番目のハンドラーに到達しません。

于 2013-03-12T13:30:25.287 に答える
-1

どのようだ?

$('#loginBtn').click(function (e) {
   $('#loginArea').toggle();
   e.stopPropagation();
});

$(document).on('click',function () {
    $('#loginArea').hide();
});
于 2013-03-12T13:31:45.827 に答える