Html 在下拉列表中具有锚定滚动的hrefs
我有一个这样的下拉列表:Html 在下拉列表中具有锚定滚动的hrefs,html,css,angularjs,Html,Css,Angularjs,我有一个这样的下拉列表: <div class="dropdown"> <select> <option ng-repeat="i in sc.cl" value="{{i.deptname"}}><a ng-href="#{{i.id}}">{{i.deptname}}</a></option> </select> </div> 基本上,
<div class="dropdown">
<select>
<option ng-repeat="i in sc.cl" value="{{i.deptname"}}><a ng-href="#{{i.id}}">{{i.deptname}}</a></option>
</select>
</div>
基本上,下拉元素的名称在数组中,html中有div,id为i.id,如下所示:
<div class="right-bar">
<section class="contact-block" ng-repeat="i in sc.cl" id="{{i.id}}">
<div class="description">{{i.deptname}}</div>
<div class="inner-block">
<div ng-repeat="j in i.cgs">
<img class="vertical-image" src="frame.png">
<img class="horizontal-image" src="mobileframe.png">
</div>
</div>
</section>
</div>
{{i.deptname}
每当我单击下拉元素时,我都希望它滚动到特定的部分。但当我这么做的时候,什么也没发生。为什么会发生这种情况?当我尝试在chrome中检查元素时,它甚至没有在ng repeat下拉列表中显示标签。您应该使用Angular的
$anchorScroll
请看一看这个类似的问题:嗯,我的建议似乎完全不相关,因为我在AngularJS是个笨蛋。但是我有一个解决方案,可以使用jQuery滚动到一个部分。您只需给该部分一个ID,然后通过计算顶部偏移量并将scrolltop设置为该点的动画,即可将滚动设置为该点……如果您希望我向您展示代码,我很乐意这样做……:-)(哦,我知道这应该是一个评论,因为它不能直接回答问题,但我的声誉是13,所以我不能评论)。我认为你不需要在
ng href
指令中使用该插值,即尝试ng href=“I.id”
@willusdaman不起作用。奇怪的是,当我在chrome上使用inspect元素时,它甚至没有显示tagGotcha。这并不奇怪;输入并不是真的用于这样的目的。我鼓励你使用基于列表的下拉列表来实现更一致的行为。如果你使用css库,它几乎肯定会提供u有一个,如果没有,请检查当我使用- 时此功能是否有效,但在标记内部不起作用。您是如何做到的?
标记应具有ng click
属性,该属性将调用负责锚导航的控制器方法。