从window.location.hash中删除#

cir*_*cey 30 jquery window.location

我有这个简单的脚本:

$(document).ready(function(){

var $yoyo = window.location.hash;

alert($yoyo);

});
Run Code Online (Sandbox Code Playgroud)

但我需要摆脱#符号,因为我将使用变量来定位div ID.我尝试过使用.remove('#'),但这似乎不起作用.

提前谢谢了!

Mat*_*hen 84

var $yoyo = window.location.hash.substring(1);
Run Code Online (Sandbox Code Playgroud)

这只是意味着我们将从字符1(0-indexed,so second)开始构成一个子字符串.请参阅子字符串文档.

  • 只要字符串实际上以"#"开头,​​这就可以工作,但可以说这更健壮,更容易阅读:`window.location.hash.replace(/ ^#/,"")`. (5认同)

Mik*_*rov 15

var $yoyo = window.location.hash.replace("#", "");
Run Code Online (Sandbox Code Playgroud)

.remove()是一个jQuery dom操作函数..replace()是一个本机javascript函数,用字符串中的另一个字符串替换字符串.来自W3Schools:

<script type="text/javascript">

var str="Visit Microsoft!";
document.write(str.replace("Microsoft", "W3Schools"));

</script>
Run Code Online (Sandbox Code Playgroud)