繁体   English   中英

Javascript onmouseover位置鼠标

[英]Javascript onmouseover position mouse

我有这个脚本,当您浏览图像时,该图像会在光标的bot右侧显示图像。 我不想改变立场,但是由于我对javascript并不是那么“好”,所以我真的不知道该怎么做。

function followmouse(e){
var xcoord=offsetfrommouse[0]
var ycoord=offsetfrommouse[1]

var docwidth=document.all? truebody().scrollLeft+truebody().clientWidth : pageXOffset+window.innerWidth-15
var docheight=document.all? Math.min(truebody().scrollHeight, truebody().clientHeight) : Math.min(window.innerHeight)

if (typeof e != "undefined"){
    if (docwidth - e.pageX < defaultimagewidth + 2*offsetfrommouse[0]){
        xcoord = e.pageX - xcoord - defaultimagewidth; // Move to the left side of the cursor
    } else {
        xcoord += e.pageX;
    }
    if (docheight - e.pageY < defaultimageheight + 2*offsetfrommouse[1]){
        ycoord += e.pageY - Math.max(0,(2*offsetfrommouse[1] + defaultimageheight + e.pageY - docheight - truebody().scrollTop));
    } else {
        ycoord += e.pageY;
    }

} else if (typeof window.event != "undefined"){
    if (docwidth - event.clientX < defaultimagewidth + 2*offsetfrommouse[0]){
        xcoord = event.clientX + truebody().scrollLeft - xcoord - defaultimagewidth; // Move to the left side of the cursor
    } else {
        xcoord += truebody().scrollLeft+event.clientX
    }
    if (docheight - event.clientY < (defaultimageheight + 2*offsetfrommouse[1])){
        ycoord += event.clientY + truebody().scrollTop - Math.max(0,(2*offsetfrommouse[1] + defaultimageheight + event.clientY - docheight));
    } else {
        ycoord += truebody().scrollTop + event.clientY;
    }
}
gettrailobj().left=xcoord+"px"
gettrailobj().top=ycoord+"px"

}

我认为我在这里有正确的代码,如果没有,谁能告诉我我应该粘贴什么代码?

这可以帮助您开始。 我没有尝试优化它。

Codepen示例

我的jQuery经验有限,但是我认为正确的语法现在不是最重要的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM