0

我在 .htaccess 中有论文行:

RewriteRule ^page-([0-9]+)-pg-1\.html$ page.php?b=$1&pg=1 [L,NC,NS]
RewriteRule ^page-([0-9]+)-pg-([0-9]+)\.html$ page.php?b=$1&pg=$2#nv [NE,L,NC,NS]
RewriteRule ^page-([0-9]+)-pg-([0-9]+)-lo\.html$ page.php?b=$1&pg=$2&lo=1 [L,NC,NS]

但它不像我预期的那样工作。似乎它没有转到页面中的#nv。这条规则有什么问题?

4

2 回答 2

0

您不能用哈希重写 URL:它们是在客户端解析的,而不是在服务器端解析的。但是您可以通过以下方式组织对此类页面的重定向R

RewriteRule ^page-([0-9]+)-pg-([0-9]+)\.html$  page.php?b=$1&pg=$2#nv [NE,L,NC,NS,R=302]
于 2012-12-23T09:31:56.983 回答
0

我遇到了同样的问题,最后用 jQuery 解决了。

$("html, body").animate({ scrollTop: YPosition}, 3000 );

不知道对你有没有用。

如果您不知道盒子的高度,您可以使用 ID 来引用该地点:

$("html, body").animate({ scrollTop: $("#ElementID").offset().top-XXX }, 1000);

我必须在顶部减去一些像素,因为我有一个固定的导航栏。

于 2013-01-19T13:00:14.020 回答