Gre*_*reg 5 javascript onclick stoppropagation angularjs
我有一个span看起来像这样的标签:
<span ng-bind-html="item.Name | linky" ng-click="open(item)"></span>
Run Code Online (Sandbox Code Playgroud)
在ng-repeat中.
我有一个问题,如果item.Name包含一个电子邮件或链接,linky过滤器更改html并插入一个锚标记.现在,当我单击链接时,ng-click触发并且锚点打开,但我只想打开锚点并阻止调用ng-click ...这可能吗?
对于你的HTML,这样的事情怎么样:
<span ng-bind-html="item.Name | linky" ng-click="open(item, $event)"></span>
Run Code Online (Sandbox Code Playgroud)
这对你的函数调用:
$scope.open = function(item, event){
if(event.srcElement.tagName !== 'A'){
alert('do something here with ' + item.Name);
}
}
Run Code Online (Sandbox Code Playgroud)
可能有更好的方法,但我相信这会奏效.虽然它出现在我在这篇小组文章中看到的文档$event中.