我尝试在点击链接后获取哈希值。有任何想法吗?
例如
index.html#needThis
这是我的结果:
index.htmlneedThis
如何删除’index.html’?
$('#myselector').on('click','a',function(){ var hash = $(this).attr('href').replace('#','') //get url console.log(hash); })
解决方法
更新
现代浏览器(不知道怎么回事)可以直接从锚元素中提取哈希(所以我添加了#5)
拿你的选择..
> var hash = $(this).attr(‘href’)。split(‘#’)[1];
> var hash = $(this).attr(‘href’)。replace(/^.*?#/,”);
> var href = $(this).attr(‘href’),hash = href.substr(href.indexOf(‘#’)1);
> var hash = $(this).attr(‘href’)。match(/#(。* $)/)[1];
> var hash = this.hash.substr(1);
更新
只是重新审视了这一点,我相信#2可以改进
$(this).attr('href').replace(/^.*?(#|$)/,'');
这样,如果没有哈希存在,它将返回空而不是整个url ..