javascript求鼠标在canvas画布里的坐标

https://img3.mukewang.com/5b810d7b0001e47c07110636.jpg

代码很简单就这么一点,

160X160的一个canvas画布,按理鼠标在画布里的时候,下面显示坐标的x,y都在0~160范围内。

单独用浏览器打开这段程序,很正常。

可是放在博客侧边栏公告里,x倒正常,y却都负了。。。。。。

现在已经确定是y1的问题,

现在发现是这样的,我只要把网页上下滚动拉到顶,那么就可以得到正确的值。也就是y1得到的不是网页内的坐标,而是网页可视范围上的坐标。

请问y1怎么改,如何才可以得到正确的坐标?


慕桂英546537
浏览 859回答 1
1回答

慕娘9325324

var n = document.getElementById("myCanvas");var c = n.getContext("2d");var ev2 = event || window.event;var x1 = ev2.PageX||ev2.clientX;var y1 = ev2.PageY||ev2.clientY;x1 += document.documentElement.scrollLeft || document.body.scrollLeft;y1 += document.documentElement.scrollTop || document.body.scrollTop;var x2 = n.offsetLeft;var y2 = n.offsetTop;//var y2 = $(n).offset().top;var x = x1 - x2;var y = y1 - y2; 
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript