是否可以使用Angularjs锚链接?
即:
<a href="#top">Top</a>
<a href="#middle">Middle</a>
<a href="#bottom">Bottom</a>
<div name="top"></div>
...
<div name="middle"></div>
...
<div name="bottom"></div>
非常感谢。
你可以试着用anchorScroll。
示例
因此,控制器将是:
app.controller('MainCtrl', function($scope, $location, $anchorScroll, $routeParams) {
$scope.scrollTo = function(id) {
$location.hash(id);
$anchorScroll();
}
});
和观点:
<a href="" ng-click="scrollTo('foo')">Scroll to #foo</a>
...锚id没有秘密:
<div id="foo">
This is #foo
</div>
我不知道这是否回答了您的问题,但是的,您可以使用angularjs链接,例如:
AngularJS网站上有一个很好的例子:
http://docs.angularjs.org/api/ng.directive:ngHref
更新:AngularJS留档有点模糊,它没有提供一个好的解决方案。抱歉!
您可以在这里找到更好的解决方案:如何在AngularJS中处理锚散列链接
似乎有几种方法可以做到这一点。
Angular提供了一个$anchorScroll
服务,但是留档严重不足,我无法让它工作。
退房http://www.benlesh.com/2013/02/angular-js-scrolling-to-element-by-id.html 了解$anchorScroll
。
我测试的另一种方法是创建自定义指令并使用el。scrollIntoView()
。通过在指令链接函数中基本上执行以下操作,这项工作相当正常:
var el = document.getElementById(attrs.href);
el.scrollIntoView();
然而,当浏览器本机支持这两种功能时,这两种功能似乎都有点言过其实,对吗?
如果您查看http://docs.angularjs.org/guide/dev_guide.services.位置及其超文本标记语言链接重写部分,您将看到以下链接不会重写:
包含目标元素的链接
示例:
因此,您只需将
target
属性添加到链接中,如下所示:
<a href="#anchorLinkID" target="_self">Go to inpage section</a>
Angular默认为浏览器,由于它是一个锚链接,而不是不同的基本网址,浏览器会根据需要滚动到正确的位置。
我选择了选项3,因为这里最好依赖本机浏览器功能,这样可以节省我们的时间和精力。
需要注意的是,在一次成功的滚动和散列更改之后,Angular会继续并将散列重写为其自定义样式。然而,浏览器已经完成了它的业务,您可以开始了。
问题内容: 可以在Angularjs中使用锚链接吗? 即: 谢谢 问题答案: 看来有几种方法可以做到这一点。 选项1:本机角度 Angular提供了一项服务,但文档严重缺乏,我无法使其正常工作。 请访问http://www.benlesh.com/2013/02/angular-js-scrolling-to-element-by- id.html, 以获取有关的一些见解。 选项2:自定义指令/本
你们中有人知道如何在AngularJS中很好地处理锚散列链接吗? 对于一个简单的FAQ页面,我有以下标记 当点击任何上述链接AngularJS拦截和路由我到一个完全不同的页面(在我的情况下,一个404页面,因为没有匹配的链接路由。) 我的第一个想法是创建一个匹配/faq/:章的路由,并在相应的控制器中检查匹配元素后的$routeParams.chapter,然后使用jQuery向下滚动到它。 但是
问题内容: 你们中 有谁 知道如何在 AngularJS中 很好地处理锚点哈希链接吗? 我为简单的常见问题解答页面添加了以下标记 单击上面的任何链接时,AngularJS会拦截并将我路由到一个完全不同的页面(在我的情况下是404页,因为没有路由与这些链接匹配。) 我的第一个想法是创建一个匹配“ / faq /:chapter ” 的路由,并在相应的控制器中检查匹配的元素之后,然后使用jQuery向
本文向大家介绍angularJs中跳转到指定的锚点实例($anchorScroll),包括了angularJs中跳转到指定的锚点实例($anchorScroll)的使用技巧和注意事项,需要的朋友参考一下 $anchorScroll 根据HTML5的规则,当调用这个函数时,它检查当前的url的hash值并且滚动到相应的元素。 监听$location.hash()并且滚动到url指定的锚点的地方。 可
问题内容: 无论如何(在CSS中)是否要避免在页面..中引入文本和链接的下划线? 问题答案: 使用CSS。这会删除和元素的下划线: 有时您需要覆盖元素的其他样式,在这种情况下,可以在规则上使用修饰符:
问题内容: 我想在一个链中进行多个Ajax调用。但我也想在每次通话后按摩数据,然后再进行下一次通话。最后,当 所有 调用成功时,我想运行其他代码。 我正在为我的Ajax调用使用Angular $ http服务,并坚持这一点。 可能吗? 问题答案: 是的,由于AngularJS的服务是围绕PromiseAPI构建的,因此可以非常优雅地对其进行处理。基本上,对方法的调用会返回一个Promise,您可以