页面加载后Div消失

时间:2015-06-15 07:56:00

标签: javascript jquery html5

我是jQuery和JavaScript的新手,我陷入困境,所以我需要坐在那里的智能大脑的建议。我有登录之前向用户显示的div。

%}

我希望在用户成功登录后,将此div替换为最初隐藏的另一个div。

Div替换为:

<div id="login" class = "login">
<ul>
  <li><a href="signup.html">Login</a></li>
</ul>
</div>

我在jQuery中执行以下操作(现在我已经使用硬编码的用户名/密码值来解释我的问题)。

我在点击登录按钮时调用auth功能。用户单击登录按钮后,我希望页面重新加载,并且#login div将被#welcomeLogin div替换,以便向用户显示新的URL。但问题是#welcomeLogin div确实出现了几秒钟,然后因为我已经<div id="welcomelogin" class = "login" style="display: none;"> <ul> <li><a href="profile.html">Welcome abc</a></li> </ul> </div> 而消失了。

我还希望在身份验证成功后重新加载页面,然后显示#welcomeLogin div直到会话保持不变。所有这些都是在location.reload

之外完成的
$( document ).ready();

2 个答案:

答案 0 :(得分:1)

当您致电location.reload()时,页面会刷新。这意味着客户端上的任何其他内容(即任何程序javascript)可能都有时间运行,但这只是因为浏览器刷新页面的时间。

你可以在页面加载时调用这个javascript函数,并监视某种状态,如果你希望看到'持久'某些DOM的更改(例如交换div)到页面的下一个“版本”。 / p>

我想跟进一个推荐的(替代)方式在javascript中这样做,但老实说,我不确定这是最好的方法进行身份验证。

我建议使用表单帖子,并且已经有可用于实现基于表单的身份验证的组件,具体取决于您在服务器上的内容。

答案 1 :(得分:1)

在你改写页面之后,一切都进入了初期。你的auth函数将停止然后重新加载每个js文件。