也许这对于 ASP.NET MVC 是不可能的,因为我找不到答案。我想要做的是单击一个链接,该链接将加载目标页面,然后滚动到该页面上的锚点。在这个问题中回答了一个完美的例子。
但是,我如何让它与 JavaScript/jQuery 一起使用?
更新:使用此代码,除了 setTimeOut 定义外,一切正常。它只是继续运行脚本,直到我单击停止,然后如果向下滚动到锚点。这是为什么?
var jump = function (e) {
if (e) {
e.preventDefault();
var target = $(this).attr("href");
} else {
var target = location.hash;
}
$('html,body').animate(
{
scrollTop: $(target).offset().top
}, 2000, function () {
location.hash = target;
});
}
$('html, body').hide();
$(document).ready(function () {
$('a[href^=#]').bind("click", jump);
if (location.hash) {
setTimeout(function () {
$('html, body').scrollTop(0).show();
jump();
}, 0);
} else {
$('html, body').show();
}
});