我试图计算正确的鼠标的坐标,在用户的协调的空间,在SVG文件内Javascript code当滚动存在时,SVG文件是从内的火狐。但它不是相当正确的。这是需要获得基于SVG提示正确绘制甚至当SVG是滚动的水平或垂直。

我渴望拥有的坐标变换是正确的跨即和Firefox浏览器。此外,我想这样做与一个单一来源Javascript+SVG解决方案,希望不需要浏览器的具体条件代码。我目前正在使用火狐3.5.10,但是我会考虑的升级到较新的版本的火狐,我没有测试即呢。

问题是我遇到的协调偏移量滚动:鼠标坐标变换不足的时候滚动来存在的SVG元件的内部火狐。作为一个调试的援助,以图坐标变换,我正与一个简单的SVG文件,该文件包含Javascript处理程序,所有在一个文件,这只是画十字在鼠标为SVG线的对象。找到它公布 svg_cross_hairs.svg.如果你装载这个文件成FireFox和缩短FireFox窗口下降,直到滚动出现,然后滚动的水平或垂直的滚动中,你会发现,十字绘制的Javascript抵消的数额的水平或垂直的滚动的金额,这是不正确的,以便得出一个提示目的上或附近哪里鼠标实际上是。

我看到的 Firefox:获得鼠标左上角的视 问题谈 scrollTop 财产。

msg#00056 澄清,还有混乱的含义 element.{pageX,pageY,clientX,clientY} 属性和 element.getscreenCTM 法。

是有一个更清洁的方式达成正确的鼠标的坐标,在用户的协调的系统?

有帮助吗?

解决方案

你可以使用 evt.pageX / evt.pageYwindow.pageXOffset / window.pageYOffset 抵达,在一些作品即使svg滚动。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top