获取canvas内元素上的Click事件

本文关键字:Click 事件 元素 canvas 获取 | 更新日期: 2023-09-27 17:53:02

我正在制作一个具有3D球体(可旋转和可缩放)的unity项目。在这个球体里面有121个四边形(瓷砖)。球体是可见的,像谷歌地球和内部的画布。我想在Quads上获得点击事件,这样我就可以知道哪个Quad用户点击了,应用程序可以根据该执行操作。

有什么办法可以做到吗?我听说画布就像位图图像。

获取canvas内元素上的Click事件

如果您能够获得特定的Quard细节,如果(x,y)坐标给出,那么您可以通过将点击事件附加到canvas来存档它。

var elem = document.getElementById("myCanvas");
// Add event listener for click events.
elem.addEventListener('click', function (event) {
    var x = event.pageX - elemLeft;
    var y = event.pageY - elemTop;
    // Collision detection between clicked offset and element.
    quardElements.forEach(function (element) {
        if (y > element.top && y < element.top + element.height
                && x > element.left && x < element.left + element.width) {
            //do your stuff here
        }
    });
}, false);