我正在尝试跟踪外部链接上的点击次数(不使用“重定向页面”)。
当用户关注链接时,无论用户是否
,如何捕获事件onClick事件仅适用于第一个。
如果设置href="javascript:fireEventAndFollowLink()"
,用户将无法在新窗口(2)中打开链接,因此这不是解决方案。
答案 0 :(得分:12)
可以通过某种方式触发链接(假设是现代浏览器,请参阅脚注):
<a target="_blank">
或<a target="_new">
,该页面将加载到新标签页中。target
值,可以在当前屏幕或另一个框架中加载链接。 如何捕获这些链接
没有可靠的方法来捕获所有链接事件。
onmouseup
事件可用于检测1,2和3
可以通过event.button
(or event.which
)属性跟踪已使用的按钮。在所有非IE浏览器中,0 =左,1 =中,2 =右。在IE中,1 =左,2 =中,4 =右。onclick
事件可用于捕获1和2. event.altKey
和event.shiftKey
属性检测修饰键。oncontextmenu
事件可用于捕获3 onkeydown
事件可用于捕获4。修饰符键的行为在任何规范中都没有形式化,因此是浏览器特定的。至少Firefox(至少3+)和Chrome(全部?)实现了这一关键行为。
Related question - 如何拦截链接上的操作(<a>
)?