0

我正在尝试使用 Jquery 定位绝对 DIV,具体取决于用户在页面上单击的位置。

目前这很好用

$('#window').css('left', jsEvent.pageX);
$('#window').css('top', jsEvent.pageY);

这会将元素准确定位在我的鼠标单击屏幕的位置......

直到你向下滚动。这就是为什么我试图实现一些将页面顶部的像素数量考虑在内的东西。我想过这样的事情......

$('#window').css('top', jsEvent.pageY + scrollTop());

会做的伎俩,不幸的是它不起作用。

有什么提示吗?

谢谢,

蒂姆

4

1 回答 1

1

这绝对适用于 Firefox。因此,它应该可以在 Chrome、Safari 和 Opera 中运行。IE 但是,我不完全确定。试一试。

$('#window').css({
    left: e.clientX
    , top: e.clientY + document.documentElement.scrollTop
});

编辑:这个新版本应该适用于大多数浏览器,如果不是所有浏览器的话。

var rxp = /webkit/gi;

$('#window').css({
   left: e.clientX
   , top: e.clientY + rxp.test(window.navigator.userAgent) ? document.body.scrollTop : document.documentElement.scrollTop
}); 
于 2010-05-16T04:51:25.987 回答