锚符号在htaccess文件中不起作用

时间:2012-12-23 09:28:15

标签: .htaccess anchor

我在.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。 该规则有什么问题?

2 个答案:

答案 0 :(得分:0)

您无法重写为具有哈希的URL:它们在客户端解析,而不是在服务器端解析。但您可以使用R

组织重定向到此类网页
RewriteRule ^page-([0-9]+)-pg-([0-9]+)\.html$  page.php?b=$1&pg=$2#nv [NE,L,NC,NS,R=302]

答案 1 :(得分:0)

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

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

我不知道它对你有用。

如果你不知道盒子的高度,你可以使用ID来引用这个地方:

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

我必须将一些像素减去顶部,因为我修复了导航栏。