相关疑难解决方法(0)

如何在AngularJS中处理锚式哈希链接

你们中的任何人都知道如何在AngularJS中很好地处理锚式哈希链接吗?

我有一个简单的FAQ页面的以下标记

<a href="#faq-1">Question 1</a>
<a href="#faq-2">Question 2</a>
<a href="#faq-3">Question 3</a>

<h3 id="faq-1">Question 1</h3>
<h3 id="faq-2">Question 2</h3>
<h3 id="fa1-3">Question 3</h3>
Run Code Online (Sandbox Code Playgroud)

当点击上面任何一个链接时,AngularJS拦截并将我路由到一个完全不同的页面(在我的例子中,404页面,因为没有与链接匹配的路由.)

我的第一个想法是创建一个匹配" / faq /:chapter " 的路由,并在相应的控制器中检查$routeParams.chapter匹配元素之后,然后使用jQuery向下滚动到它.

但是然后AngularJS又一次打击我,只是滚动到页面的顶部.

所以,这里的任何人都做过类似的事情并且知道一个很好的解决方案吗?

编辑:切换到html5Mode应该解决我的问题,但我们有点必须支持IE8 +所以我担心它不是一个公认的解决方案:/

javascript anchor hashtag angularjs

318
推荐指数
10
解决办法
22万
查看次数

标签 统计

anchor ×1

angularjs ×1

hashtag ×1

javascript ×1