Javascript 数据ng单击不在带有数据ng href的模板中工作
嗨,我是新的角度和面对一个奇怪的问题与角度模板。我的模板包含以下代码:Javascript 数据ng单击不在带有数据ng href的模板中工作,javascript,angularjs,angularjs-directive,angularjs-ng-repeat,angular-ui,Javascript,Angularjs,Angularjs Directive,Angularjs Ng Repeat,Angular Ui,嗨,我是新的角度和面对一个奇怪的问题与角度模板。我的模板包含以下代码: <li hover-menu data-ng-repeat="nav in navigations" data-ng-class="{'active': current == nav.name.toLowerCase() }"> <a data-ng-href="{{nav.link}}" data-ng-click="nav.collapse = !nav.collapse">
<li hover-menu data-ng-repeat="nav in navigations" data-ng-class="{'active': current == nav.name.toLowerCase() }">
<a data-ng-href="{{nav.link}}" data-ng-click="nav.collapse = !nav.collapse">
<i class="{{nav.icon}} fa-lg-icn"></i><span class="menu-title">{{nav.name}}</span>
</a>
<ul class="dropmenu" data-ng-show="nav.sub_menu != false" collapse="nav.collapse">
<li data-ng-repeat="item in nav.sub_menu">
<a data-ng-href="{{item.link}}" data-ng-click="showScrollAndGo(item.link)"><i class="fa fa-circle mrm mlm"></i>{{item.name}}</a>
</li>
</ul>
</li>
知道我哪里做错了吗
<a data-ng-href="{{item.link}}" data-ng-click="showScrollAndGo($event, item.link)"><i class="fa fa-circle mrm mlm"></i>{{item.name}}</a>
$rootScope.showScrollAndGo = function ($event, path) {
$event.preventDefault();
alert(path)
$rootScope.showSpinner = false;
$location.path(path);
}
您必须阻止事件的默认操作,因为您在锚元素上,它将触发浏览器更改视图。我想您最好检查一下需求。请参见,在单击锚定标记时,您试图同时执行两个事件 因此,您需要明确的是,在单击锚定标记时触发一个事件,或者将用户重定向到某个链接,或者在单击时执行某些操作 当状态因href的更改而改变时,您不需要考虑折叠,因为当您返回到早期状态/href时,您会发现折叠处于早期状态
希望这有帮助 试试这个@harsh那个仍然不起作用的。你能把完整的代码放进去吗。当我在一个简单的视图中使用我的代码时,我想ng-repeat可能存在一些问题。这里显示的showScrollAndGo不是从视图中调用的。
<a data-ng-href="{{item.link}}" data-ng-click="showScrollAndGo($event, item.link)"><i class="fa fa-circle mrm mlm"></i>{{item.name}}</a>
$rootScope.showScrollAndGo = function ($event, path) {
$event.preventDefault();
alert(path)
$rootScope.showSpinner = false;
$location.path(path);
}