javascript - 鼠标位置和偏移

标签 javascript jquery mousemove

我在某个网页上获取鼠标坐标并保存它们。

$("div#container").mousemove( function(e) {
      client_x = e.pageX;
  client_y = e.pageY;

  // save x,y

});

现在其他人加载相同的页面,我想向他们显示相同的坐标(x,x 位置)。

如果我必须考虑 div#container 与它在浏览器中的位置不同(考虑屏幕分辨率和滚动),我怎么能得到相同的观点?

最佳答案

我会使用父 div 容器的 $.offset().top$.offset().left,并计算与当前容器的差异鼠标光标的 X 和 Y 坐标。

.offset() 始终引用文档而不是元素的父级。

例如:

$('#element').mousemove(function(e){
    var client_x = e.pageX;
    var client_y = e.pageY;
    var elementOffset = $(this).offset();
    client_x -= elementOffset.left;
    client_y -= elementOffset.top;

    // save x, y.
});

然后,在其他用户的显示器上,显示添加到他的偏移量后的坐标。

关于javascript - 鼠标位置和偏移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12142566/

相关文章:

javascript - 浏览器的 "Previous"按钮位置改变了吗?

javascript - 有没有一种方法可以在履行 promise 时执行某些代码,而与结果无关?

javascript - 使 HTML_PARSER 在小部件 DataTable 中工作

javascript - 是否可以使用 JQuery 加载图像并指定 Accept HTTP header ?

jquery - 无法更改 text() 值

javascript - 如何将字体大小设置为 "larger"或系统默认值的 140%

javascript - 如何编辑一篇博文的 CSS 而不是其他博文以获得 5 星评级系统?

c# - 即使鼠标未移动,PictureBox 中的 MouseMove 事件也会连续触发

jquery - Chrome 中按键时触发 mousemove() 函数

javascript - Protractor 拖放