如果我在https://www.website.com/#something
上,我如何从URL返回哈希值"something"
?
window.location.hash
就这么简单。
不要使用那些消耗CPU和影响性能的方法。
如果DOM提供了预定义的内容,请先使用它。
要传递值给PHP,请使用ajax调用PHP。
var hash = window.location.hash;
$.ajax({
url: 'someurl.php',
data: {hash: hash},
success: function(){}
})
您可以使用位置。Hash属性获取当前页面的哈希值:
var hash = window.location.hash;
update
由于有一个内置的方法来通过DOM获取哈希值,上面的答案是不合适的
var hashTag = window.location.hash
alert(hashTag);
会变的神奇
老回答
如果你的url
中有多个哈希值,你可以做如下操作//var href = location.href; // get the url in real worl scenario
var href = "www.bla.com#myhashtag"; // example url
var split = href.split("#"); // split the string; usually there'll be only one # in an url so there'll be only two parts after the splitting
var afterSplit = "Error parsing url";
if(split[1] != null){
afterSplit = split[1];
}
// If everything went well shows split[1], if not then de default error message is shown
alert(afterSplit);
这里有一个例子Live Fiddle
你可以使用
h=new URL(location).hash.split`&`.find(e=>/hash_name/.test(e)).split`=`[1]