Jquery pageX和screenX在第二个监视器上的事件为负数
Jquery pageX and screenX from event is negative on second monitor
虽然我的函数在第一个监视器上工作,就像在第二个监视器上一样,但事件的所有坐标都是负的。就像它的参考点仍然在我的主要监视器上。事件是在从html5拖放时触发的。
function endDnD(e) {
var parentOff = $(this).parent().offset();
console.log(e);
console.log(e.pageX, e.pageY, parentOff.left, parentOff.top);
var posX = e.screenX - parentOff.left;
var posY = e.pageY - parentOff.top;
$(this).css('left', posX);
$(this).css('top', posY);
}
我认为您需要将其添加到等式中:
window.screen.availLeft
如果是主屏幕(默认情况下为左屏幕)或主屏幕的宽度作为右屏幕的起点,则返回0值。
在此处查找信息和示例:https://developer.mozilla.org/en-US/docs/Web/API/Screen/availLeft
请注意,虽然这是Mozilla网站上的信息,但它也应该适用于其他流行的浏览器
要在当前屏幕上获得X坐标,可以使用:
e.clientX
而不是CCD_ 1。这将返回一个x > 0
值。
相关文章:
- 分派点击事件并保留击键修饰符
- 模糊事件的Javascript测试
- keyup事件处理程序更改焦点不适用于快速键入
- 使用 jQuery 的 .on 函数如何获取事件的原始元素
- 如何使Javascript动态html表及其上的事件
- 使用类从一个标记中双击事件
- 如何在未直接触发的情况下停止事件
- 如何在elfinder插件(一个文件管理器插件)上获得上传前事件
- 对iPad上的点击事件反应缓慢
- 事件和状态
- Fancybox是否将Click事件静音
- 主干-不管怎样,检查事件以前是否绑定过
- 从控制器返回后Ajax启动事件激发
- 如何从画布上的某个移动事件中获取X和Y
- Jquery:未触发select事件
- JsFiddle上的鼠标事件不起作用
- Jquery pageX和screenX在第二个监视器上的事件为负数
- 分配事件监视器和设置onclick之间的区别是什么?
- 检测不同监视器大小的画布元素上的单击事件
- 在可能的onchange事件处理中设置onclick事件监视器