Javascript 读取页面加载时的URL片段

Javascript 读取页面加载时的URL片段,javascript,jquery,anchor,Javascript,Jquery,Anchor,在我的web应用程序中,我有一个使用如下片段的URL: http://example.com#login 我的问题是:我可以使用页面加载上的片段打开我网站的特定部分吗?如果是这样,我如何使用Javascript或jQuery来读取和处理片段 背景信息:我使用Remodal向我的网站添加自定义模式窗口。当模式窗口打开时,该插件会自动向当前URL添加一个片段。我希望能够在页面加载时打开模式窗口。编辑:虽然片段没有添加到HTTP请求中是正确的,但浏览器仍然可以访问它。见@RoryMcCrossan的

在我的web应用程序中,我有一个使用如下片段的URL:

http://example.com#login
我的问题是:我可以使用页面加载上的片段打开我网站的特定部分吗?如果是这样,我如何使用Javascript或jQuery来读取和处理片段

背景信息:我使用Remodal向我的网站添加自定义模式窗口。当模式窗口打开时,该插件会自动向当前URL添加一个片段。我希望能够在页面加载时打开模式窗口。

编辑:虽然片段没有添加到HTTP请求中是正确的,但浏览器仍然可以访问它。见@RoryMcCrossan的答案

第2段指出URL片段不会在HTTP请求中发送

编辑2:

我的最终代码:

var fragment = window.location.hash;
if (fragment) {
    var modal = $('[data-remodal-id=' + fragment.slice(1) + ']');
    if (modal.length) modal.remodal().open();
}
您可以使用window.location.hash在加载时读取URL中的片段,并打开相关模式

var fragment = window.location.hash; // = '#login' in your example url
if (fragment) {
    $('a[href="' + fragment + '"]').remodal().open();
}

它不是在HTTP请求中发送的,但浏览器仍会在URL字符串中接收到它,因此如果插件允许您在加载时打开一个窗口,这是完全可能的。@Rorymcrossan您能告诉我如何在Javascript或jQuery中处理它吗?我为您添加了一个答案。