单击恢复密码时弹出登录关闭

时间:2014-05-05 11:12:17

标签: javascript jquery html

使用此代码,当用户在我的弹出窗口内单击此弹出窗口时。但是,当用户单击?以恢复密码时,会显示弹出窗口,但不会关闭登录表单。

如何关闭登录弹出窗口的任何想法?

HTML代码:

   <div id="joinusLogin">
        <div id="backgroundOpacity"></div>
        <form id="loginForm">
            <input id="loginFormFields" type="email" name="email" placeholder=" E-mail"/><br />
                <input id="loginFormFields" type="text" name="password" placeholder=" Password"/>
                <div id="requestPassword">
                    <a href="javascript:hideshow(document.getElementById('passwordRecover'))">?</a>
                </div>
            <br />
                <input id="submitLogin" type="submit" value="LOG IN"/>
        </form>

        <div id="signupNow">
            Don't have an account yet? 
            <a href="javascript:hideshow(document.getElementById('inviteNowSignup'))">
                Sign up here.
            </a> 
        </div>
    </div>

    <div id="passwordRecover">
        <div id="backgroundOpacity"></div>
            <form id="passwordRecoverForm">
                <input id="passwordRecoverFields" type="email" name="email" placeholder=" E-mail"/><br />
                    <input id="submitPasswordRecover" type="submit" value="SEND PASSWORD"/>
            </form>

        <div id="signupNow">
            Don't have an account yet? 
            <a href="javascript:hideshow(document.getElementById('inviteNowSignup'))">
                Sign up here.
            </a> 
        </div>
    </div>

Javscript代码

function hideshow(which){
if (!document.getElementById)
    return
if (which.style.display=="block")
    which.style.display="none"
else
    which.style.display="block"
}

$('body').click(function(){
  $('#inviteNowSignup, #joinusLogin, #passwordRecover').hide();
});

$('body').on('click',"#signupForm, #loginForm, #passwordRecoverForm",function (e){
  e.stopPropagation();
});

1 个答案:

答案 0 :(得分:0)

如您的代码所示。您已经处理了已单击并传递给您的函数的元素的打开和关闭。但是你没有处理那些已经开放的东西。

尝试在函数

之前添加此行
   $('#inviteNowSignup, #joinusLogin').hide(); 

它会隐藏其他div。 BTW很好的工作与单一功能隐藏和取消隐藏。