我正在尝试使用 javascript 创建一个项目预览(快速视图),它会根据鼠标位置改变它的方向。我想要一个类似于stackoverflow中现有的功能:
当一个项目位于页面底部时,预览窗口应该改变它的方向(当页面滚动或浏览器窗口调整大小时)。目前显示在光标下方或上方,但与实际光标位置无关(与屏幕或浏览器窗口大小无关)。我是 javascript 新手,不胜感激。
这是我用作起点的代码:
function AssignPosition(d) {
if(self.pageYOffset) {
rX = self.pageXOffset;
rY = self.pageYOffset;
}
else if(document.documentElement && document.documentElement.scrollTop) {
rX = document.documentElement.scrollLeft;
rY = document.documentElement.scrollTop;
}
else if(document.body && document.body.scrollTop) {
rX = document.body.scrollLeft;
rY = document.body.scrollTop;
}
if(document.all) {
cX += rX;
cY += rY;
}
var divHeight = d.style.height.replace(/px/, "");
divHeight = parseInt(divHeight);
if (cY < divHeight * 3 ) {
d.style.left = (cX+50) + "px";
d.style.top = (cY-10) + "px";
}
else {
cY = cY - divHeight;
d.style.left = (cX+50) + "px";
d.style.top = (cY-10) + "px";
}
}