0

过去,我曾经依赖 hash 进行内联导航,例如:

http://url?Category=a&item=3#Paragrah1

(指向http://url?Category=a&item=3页面内的Paragraph1)

随着 ajax 的广泛使用,哈希标签已经切换到不同的用途,允许页面刷新而无需重新加载整个页面。例如:

http://url#!Category=a&item=3
http://url#!Category=a&item=4 (the page switches to item 4, no full page reload)

我的问题:如何使内联导航在此类页面中工作?http://url#!Category=a&item=4拿上面的例子来说,怎样才能在页面中指向Paragraph1呢?

4

2 回答 2

0

如果您需要将哈希#用于webapp 页面导航以及移动到特定页面上的特定元素,那么您需要自己处理滚动。

javascript 提供:window.scroll(x, y).

在您的示例中,当您处理 URL 时http://url#!Category=a&item=4,您需要window.scroll使用坐标Paragraph1来移动到页面上的正确位置,即顶部。每当页面布局发生变化时,您都需要调整这些坐标。

于 2012-07-29T22:59:48.073 回答
0

请改用HTML5 历史 API。然后您可以使用哈希再次滚动。

于 2012-07-29T23:20:39.717 回答