Gnuplot:网站上嵌入的交互式SVG图形在缩放时显示错误的鼠标坐标
Gnuplot: interactive SVG graph embedded on website shows wrong mouse coordinates when scaled
当您嵌入Gnuplot svg图时,使用设置术语SVG大小600,480鼠标jsdir http://your.server.com/gnuplot-js-directory/在你的网页上,你可以切换一个坐标框来显示X和Y值。
如果您的SVG文件在<embed>
或<object>
标签中相对于大小(600px × 480px)进行缩放,则坐标将关闭,并且不会显示在光标旁边。
这是gnuplot_svg.js目录下的一个错误。
找到写
的部分p.x = evt.clientX; p.y = evt.clientY;
p = p.matrixTransform(m.inverse());
// Allow for scrollbar position (Firefox, others?)
if (typeof evt.pageX != 'undefined') {
p.x = evt.pageX; p.y = evt.pageY;
}
,并添加以下行:
if (document.documentElement.clientWidth) {
p.x = p.x / document.documentElement.clientWidth * gnuplot_svg.plot_term_xmax;
p.y = p.y / document.documentElement.clientHeight * gnuplot_svg.plot_term_ymax;
} else if (window.innerWidth) {
p.x = p.x / window.innerWidth * gnuplot_svg.plot_term_xmax;
p.y = p.y / window.innerHeight * gnuplot_svg.plot_term_ymax;
}
坐标框的位置现在应该相对于或标记内SVG的实际大小进行缩放,并将跟随光标。(适用于Chrome和InternetExplorer, Firefox不报告document.documentElement.clientWidth,而是报告window. documentelement . clientwidth。innerWidth和结果应该是一样的。还没有测试过Safari)
相关文章:
- 为什么缩放按钮不会显示在照片擦除中
- 未注释img´除非调整浏览器大小、缩放或打开开发工具,否则不会显示
- ArcGIS Javascript-缩放以显示所有点
- 谷歌地图漏洞?显示的标记会根据缩放级别而更改
- 网页调整缩放显示
- Jquery:缩放后的图像未正确显示
- 传单,着色矢量,同时仅在特定缩放级别显示它们
- 在某些缩放级别不显示数据的图表
- 仅在缩放级别 15 谷歌地图 API v3 上显示标记
- 当缩放级别为 1 时,谷歌地图显示 kml(内部是图像 URL)不正确
- 显示图形点的平均值,随着用户缩放而动态修正
- 如何缩放 html5 画布以显示谷歌地图坐标
- 谷歌地图区域突出显示和适当的缩放“近似”区域
- 防止显示.js缩放
- 如何在传单中显示超出特定缩放级别的标签
- 突出显示如何在单击重置缩放按钮事件中捕获和插入逻辑
- 缩放 X 时突出显示为空
- jQuery 显示/隐藏缩放无法按预期工作
- 谷歌地图缩放控制隐藏和显示
- 如何使用灯箱显示图像的缩放尺寸