如何使用jQuery从URL获取锚点?

2022-08-30 01:09:01

我有一个网址,如下所示:

www.example.com/task1/1.3.html#a_1

如何使用jQuery获取锚点值并将其存储为变量?a_1


答案 1

对于当前窗口,您可以使用以下命令:

var hash = window.location.hash.substr(1);

要获取主窗口的哈希值,请使用以下命令:

var hash = window.top.location.hash.substr(1);

如果您有一个带有URL/哈希的字符串,最简单的方法是:

var url = 'https://www.stackoverflow.com/questions/123/abc#10076097';
var hash = url.split('#').pop();

如果您使用的是jQuery,请使用以下命令:

var hash = $(location).attr('hash');

答案 2

您可以使用 .indexOf().substring(),如下所示:

var url = "www.aaa.com/task1/1.3.html#a_1";
var hash = url.substring(url.indexOf("#")+1);

你可以在这里试一试,如果它可能没有,做一个这样的检查:#if(url.indexOf("#") != -1)

var url = "www.aaa.com/task1/1.3.html#a_1", idx = url.indexOf("#");
var hash = idx != -1 ? url.substring(idx+1) : "";

如果这是当前页面URL,则可以使用它来获取它,并根据需要替换。window.location.hash#