javascript - 重定向后如何将用户带到完全相同的位置?

标签 javascript html firebase firebase-authentication

我的注册页面是可滚动的,在底部,用户将通过重定向到另一个页面并重定向回另一个页面来使用 Google 登录。

当用户重定向回页面时,它将加载页面顶部,而不是底部。 我需要保留该页面的状态(因为用户可能会被重定向两次)

一种方法是在重定向功能发生时向下滚动。对于 Google,它是:

firebase.auth().getRedirectResult().then(function(result) {here !}

问题是,返回之前有 2-3 秒的延迟。

如何在页面加载时保持页面状态正确,我们返回到之前的位置

最佳答案

将 URL 更改为 #element 以立即滚动

您可以在登录前更改当前 URL,让页面立即滚动到您想要的元素。

以下是更改 URL 的示例:

// "Title" is currently ignored
history.pushState({}, "Title", "/your-url#id");

MDN docs for travelling through history

关于javascript - 重定向后如何将用户带到完全相同的位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55292946/

相关文章:

javascript - Firefox keydown退格问题

javascript - 如何在 Firebase 身份验证函数中调用函数?

javascript - 两个音频文件一一播放

javascript - 在javascript数组中插入项目并排序

javascript - ruby on Rails 是否有像 ASP.NET MVC 一样的客户端验证

firebase - 在 Firebase 中创建多少次匿名用户

ios - 无法使用 Swift 4 将数据写入 Firebase 实时数据库

html - 无法将我的导航栏居中

javascript - 更改 src 属性

javascript - 网页鼠标悬停的缺点