6
我一直在处理一个JavaScript存在的问题,包括跟踪用户点击链接时的情况(如果您好奇,这里是:Why does using target="_blank" cause Javascript to fail?)。onMousedown vs onClick的下滑?
我发现我可以通过跟踪onMousedown事件而不是onClick事件来解决问题。
我很好奇这种方法的缺点。
- 如果用户点击向下链接,然后移动鼠标离开链接释放它,那么该事件将被记录,即使用户没有访问过的链接 前:我能想到的那些
- 如果用户使用Tab键浏览器焦点移到链接,然后按下回车键,点击就不会被记录
这些都是常见的都不是,所以我不是非常担心它们。
我有什么缺点吗?
我与你的讯息同意,但它困扰我认为Google的搜索页面使用onmousedown而不是onclick来跟踪点击次数,这表明他们处理这些问题,或者至少考虑采用最佳实践。有什么想法吗? – Dunc 2011-09-21 13:29:29
我并不完全知道谷歌如何跟踪点击次数,但这些是我可以想到的关于他们使用onmousedown的一些观点:他们对聚合点击百分比年龄感兴趣 - 少数或多或少无关紧要。使用onclick/onmousedown,没有可靠的方法来知道用户是否遵循链接(使用onclick可能会导致缺少右键单击并在新选项卡中打开,使用mousedown可能会导致每次右键单击都被注册作为链接)。然而,右键点击可能意味着用户对链接感兴趣。 – Raze 2011-09-21 17:08:27
此外,mousedown事件可以让更多的时间在遵循链接之前向Google发送数据(在按下鼠标按钮之后和释放它之前的小时差) - 足以将请求发送到Google服务器。不确定onclick是否会为此留下足够的时间。雅虎所做的另一种选择是首先将您带到他们的服务器,然后将您重定向到您感兴趣的URL。 – Raze 2011-09-21 17:12:34