我在某个网站(,如StackOverflow,雅虎,美国国土安全部,...... )上看到一个与链接关联的单词,单击该链接时,不仅会加载页面,还会加载页面, ,在与单词相关的包含开始的确切位置显示该页面。
如何使用ASP.NET MVC获得该功能? (顺便说一下,我需要javascript吗?)
感谢您的帮助
答案 0 :(得分:5)
<a href="#jumpHere">Go to the other content</a>
<a name="jumpHere">Some content</a>
此外,网址可以包含/yourpage.html#jumpHere
或变量/yourpage.html?var1=foo&var2=bar#jumpHere
。
由于我们讨论的是哈希(#),它通常用于跳转到页面的特定部分。因此,它不会重新加载整个页面。这对于仅使用AJAX从一个视图移动到另一个视图的Web应用程序非常有用。为了使每个视图都可收藏,JavaScript使用location.hash
“保存”状态(您所使用的视图)到URL。下次打开URL时,JavaScript会读取该URL并加载正确的视图。在HTML5中,这被pushState
取代。
答案 1 :(得分:4)
1)在页面上找到元素的坐标
2)window.scrollTo(x,y)
答案 2 :(得分:1)
您需要在页面中创建命名锚点。这将产生您正在谈论的结果,几乎就像在页面中创建“书签”一样。不需要javascript。
首先,使用<a>
标记创建锚点,并指定name
属性(在本例中为section1
):
<a name="section1"></a>
然后,要从同一页面链接到该锚点,只需使用以下内容:
<a href="#section1">Go to Section 1</a>
如果您要从其他网页链接到该锚点(在本例中为mypage.html
),请在网址末尾添加#section1
:
<a href="mypage.html#section1">Go to Section 1 in MyPage.html</a>
有关详细信息,请参阅here。
答案 3 :(得分:1)
它被称为锚标记。
将其放在HTML中。
<a name="name"></a>
如果您拨打此网址,则会跳转到该位置。
html-file.html#name
答案 4 :(得分:1)
您可以使用命名锚点使用HTML执行此操作,而无需使用javascript。 here is a link explaining this
答案 5 :(得分:1)
使用不同的html元素的id标签非常简单 例如: - 一个div元素,如果它有“页脚”作为其ID并放在页面的底部,那么,http://url-address-to-thatpage.html #footer 将加载页面并滚动它页脚。 (在页面url后面添加“#idoftheelement”) 也可以使用javascript加载和滚动页面。
答案 6 :(得分:1)
另一种方法是使用“id”属性,如果它不是你想要书签的锚标签。例如:
<div id="bookmark1">Content...</div>
然后,您可以使用这样的锚标记链接到它:
<a href="#bookmark1">Go to content</a>
或者通过将#bookmark1附加到
链接到页面上的那个位置http://yourwebsite.com/page#bookmark1