2014-10-02 70 views
0

当链接url是真实的(url到当前页面)时,我想要处理点击事件。问题是链接不能被我编辑(这些是用户内容),所以我不能将任何指令添加到链接。在这种情况下,我想捕捉并处理任何链接点击事件来解决我的问题。但是当链接url是真实的时,AngularJS不会触发任何事件。如果url不是实际的,我可以使用$ locationChangeStart或$ locationChangeSuccess事件的$ location服务。但在我的情况下,我不能使用这些事件,因为他们从来没有被触发。任何帮助?如何捕捉任何链接点击事件

回答

1

您可以使用jQuery或原始JS在用户生成的内容中侦听<a>标记上的点击事件,然后使用$rootScope.$broadcast来通知应用程序的其余部分。如果您想更改URL,只需使用JS从<a>标记中获取并将其作为参数传递给$broadcast即可。然后拨打$location.url()手动更改路由。

+0

如果你提供了一些样品,它会很棒! – HardikDG 2017-02-20 16:37:25