Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/475.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JS使用URL而不是哈希更新窗口位置_Javascript_Jquery_Dom_Window.location - Fatal编程技术网

Javascript JS使用URL而不是哈希更新窗口位置

Javascript JS使用URL而不是哈希更新窗口位置,javascript,jquery,dom,window.location,Javascript,Jquery,Dom,Window.location,我正在构建一个用于登录/注册等的web应用程序,不希望页面必须刷新 www.mysite.com 我知道如何在不刷新页面的情况下在URL上设置哈希: location.hash 致:www.mysite.com/#sign 但我想要的是:www.mysite.com/signin 没有散列,因此它的搜索引擎优化友好。还有,一旦我设定好了。在JavaScript中,如何读取/之后的第一条路径,以便检测SignIn、Register、AboutUs等,并显示适当的内容 谢谢 如果不强制页面加载,则

我正在构建一个用于登录/注册等的web应用程序,不希望页面必须刷新

www.mysite.com

我知道如何在不刷新页面的情况下在URL上设置哈希:

location.hash
致:www.mysite.com/#sign

但我想要的是:www.mysite.com/signin

没有散列,因此它的搜索引擎优化友好。还有,一旦我设定好了。在JavaScript中,如何读取/之后的第一条路径,以便检测SignIn、Register、AboutUs等,并显示适当的内容


谢谢

如果不强制页面加载,则无法通过JS更改位置。在不强制页面加载的情况下,只能更改哈希部分

document.location = "signin";
这将刷新页面。如果不使用锚(散列),就无法绕过它

然后,阅读您所在的页面:

var page = document.location;
var path = page.pathname;

if (path == "signin") {
    // do something
}
假设你的“登录”内容确实在同一个页面上,那么散列没有任何优势或劣势,因为不管URL格式如何,页面都将被爬网和索引。看这个