如何获得哈希值(#)从一个URL使用jQuery的值

例如:

www.site.com/index.php#hello 

我想把值“你好”在一个variables

 var type= .... 

使用jQuery

不需要jQuery

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

你可以使用下面的代码来做到这一点:

 var url = "www.site.com/index.php#hello"; var hash = url.substring(url.indexOf('#')+1); alert(hash); 

看DEMO

 var url ='www.site.com/index.php#hello'; var type = url.split('#'); var hash = ''; if(type.length > 1) hash = type[1]; alert(hash); 

在jsfiddle上进行工作演示

使用以下JavaScript从URL获取散列(#)后的值。 你不需要使用jQuery。

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

我从这里得到了这个代码和教程 – 如何使用JavaScript从URL获取哈希值

这很容易。 尝试下面的代码

 $(document).ready(function(){ var hashValue = location.hash; hashValue = hashValue.replace(/^#/, ''); //do something with the value here }); 

基于AK的代码,这里是一个帮助函数。 JS小提琴在这里( http://jsfiddle.net/M5vsL/1/ )…

 // Helper Method Defined Here. (function (helper, $) { // This is now a utility function to "Get the Document Hash" helper.getDocumentHash = function (urlString) { var hashValue = ""; if (urlString.indexOf('#') != -1) { hashValue = urlString.substring(parseInt(urlString.indexOf('#')) + 1); } return hashValue; }; })(this.helper = this.helper || {}, jQuery); 

我从运行时的url,下面给出了正确的答案:

 let url = "www.site.com/index.php#hello"; alert(url.split('#')[1]); 

希望这可以帮助