如何捕获任何链接点击事件

时间:2014-10-02 07:56:06

标签: angularjs

我想在链接网址为实际网址(当前网页的网址)时处理点击事件。问题是我无法编辑链接(这些是用户内容),因此我无法向链接添加任何指令。在这种情况下,我想捕获并处理任何链接点击事件来解决我的问题。但是当链接URL是实际的时,AngularJS不会触发任何事件。如果url不是实际的,我可以使用$ location服务的$ locationChangeStart或$ locationChangeSuccess事件。但在我的情况下,我不能使用这些事件,因为它们永远不会被触发。有什么帮助吗?

1 个答案:

答案 0 :(得分:1)

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