【问题标题】:Canvas Mouse Positioning Incorrect in IE10IE10 中的画布鼠标定位不正确
【发布时间】:2013-08-19 05:01:03
【问题描述】:

如果 <canvas> 元素未在页面顶部,我遇到 Internet Explorer 10 无法正确注册鼠标位置的问题。打开 IE10 并查看下面的链接。


问题:

单击此链接并尝试拖动图形的节点: http://ffi-server.no-ip.biz:257/test/good.html

现在,在此页面上尝试相同的操作:http://ffi-server.no-ip.biz:257/test/bad.html

有趣的是,IE9没有这个问题,添加<meta>标签告诉IE10像IE9一样渲染页面并不能解决这个问题。


可能的解决方案?

我想我找到了有问题的代码行,但我不知道如何纠正它。看3044行:http://pastebin.com/82GJBiEB

我只是不知道如何纠正它。我相信 IE10 报告的 e.pageY 值与正常工作的浏览器不同。您可以通过单击此页面上画布的不同区域来验证这一点:http://ffi-server.no-ip.biz:257/test/alert.html 并查看 IE10 中报告的值,比如说。铬。


有人可以提出解决此问题的方法吗?

感谢您的宝贵时间!

【问题讨论】:

  • 您正在使用 jQuery,因此您需要排除它作为错误的原因。除了显示 e.pageY 之外,还显示 e.originalEvent.pageY 以查看 jQuery 是否可能错误地“更正”了该值。
  • @Brandon 我后来发现,jQuery 是错误:bugs.jquery.com/ticket/12343。无法正确计算鼠标在IE10中的位置。

标签: javascript jquery html canvas internet-explorer-10


【解决方案1】:

试试 e.layerX 和 e.layerY。我有一个类似的问题,这解决了它。

【讨论】:

    猜你喜欢
    • 2021-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-20
    • 1970-01-01
    • 1970-01-01
    • 2013-06-12
    相关资源
    最近更新 更多