有这么一个需求,统计一个a链接的点击次数,这个a链接是在当前页面打开,统计是方式是向后台发一个ajax请求。这时就会有问题,因为点击完链接页面就直接跳转了,导致有些时候会统计不到。有没有方法能够确认ajax请求返回了再跳转页面,不想使用window.location的方法跳转,想以a链接默认的后续跳转处理,因为也有可能a链接是新窗口打开的。
2 回答
慕村9548890
TA贡献1884条经验 获得超4个赞
半年前遇到过同样情况,这个问题最简单最佳解决方案:不要用onclick()触发ajax统计,改用mousedown().解析:1.onclick()整个过程包含mousedown()和mouseup().2.a链接跳转是在mouseup()之后才触发.这样的结果是:ajax会在跳转前触发,虽然说鼠标按下->松开的时间很短,但是现今电脑和浏览器足以完成任务.
森栏
TA贡献1810条经验 获得超5个赞
考虑个简单的问题:如果是屏幕阅读器,或鼠标出现故障的用户,用Tab+Enter来访问的,甚至于搜索引擎索引,都不会触发onClick。所以在这个环节截获点击统计,恐怕不是个好想法。为什么不在后续打开的页面里统计点击次数呢?如果一定要这么做,然后还不想用window.location跳转,也许就只能试试同步ajax请求能不能做到了。
添加回答
举报
0/150
提交
取消