日期:2014-05-16  浏览次数:20348 次

采集的坐标点,超出了分辨率,怎么回事?
我有一个980大小的页面上面部署了一段JS用来采集点击位置
现在数据里有20%的坐标X位置溢出了,怎么回事?
比如我采集到的
sw      sh      x        y
1440 900 2302 1858
1024 768 1525 1347

前面是分辨率,后面是采集到的点击位置

什么情况下会出现这种情况?

------解决方案--------------------
我来了,  不过拿的有点不好意思 没帮到你
------解决方案--------------------
你页面大小980,用户使用时打开的页面大小不会是就只980的,你触发事件是整个document吧
你只采集是页面空容的的坐标就行了
------解决方案--------------------
随便采集下浏览器类型,可能是在其他浏览器布局下错乱了吧。。
------解决方案--------------------
按照你的算法来说溢出也是正常值啊!你要得到的是当前位置相对于文档的位置而不是相对于显示区域的位置,比如你屏幕高度768,文档高度1000,当你点击了相对于屏幕的top = 750,而你的页面现在是拉到最底端的时候,你的算法还要加上一个隐藏的高度是1000-768 = 232;最终得到的答案是982(数据因为浏览器不一样会稍微有点偏差),所以说这个数据是正常的啊如果lz本意就是取相对于整个网页顶部的高度的话。
------解决方案--------------------
为什么你能上200分??也许你的代码不兼容?你采集xy坐标有什么意义??
------解决方案--------------------
是不是有滚动条,有滚动条的话取得貌似是整个页面的坐标,不只是window的坐标
------解决方案--------------------
不懂程序,有思路:
既然有20%的坐标X位置溢出了,应该很容易采集到这些溢出。
同时采集一下浏览器类型,看是哪种浏览器溢出。如果不是浏览器兼容问题,就再采集一下操作系统等其他相关数据!
同样是IP8,在XP和win7系统下的显示是不一样的!
实在不行像网站统计那样采集所有能采集到的用户数据,一定能顺利找到原因的!
------解决方案--------------------
还是CSS不兼容,超过你的预期宽度了。
你在   if(src.tagName == "A"
------解决方案--------------------
src.tagName == "IMG"
------解决方案--------------------
src.tagName == "INPUT"
------解决方案--------------------
src.tagName == "SPAN")      {     var Ypos 
里面把目标对象的实现宽高也输出一下,应该是超过你想像的宽度。CSS不兼容就是这样,不在你意料之外的话,就不叫不兼容了。
------解决方案--------------------
是不是浏览器被缩放了