假设有人在浏览器地址栏中输入http://example.com/somepage#someanchor。如何截取这个对锚点的调用,正常显示页面(不滚动到锚点),并且在JavaScript中代替执行一些操作,例如警报“someanchor”。需要使用JavaScript完成此操作,没有服务器端重定向(例如到somepage?anchor=someanchor)。 有什么想法吗?这个可行吗?很容易拦截我控制的锚点的点击,但这里情况有所不同。
onload
处理程序中调用此函数):function getHash() {
var hash = window.location.hash;
return hash.substring(1); // remove #
}
onload
事件上向上滚动。$(window).on('hashchange', function() {
//prevent default, then your code
});
如此SO答案所述: