0

我有一个construct 2 游戏导出文件,我在其中附加了一个html 文件。我想禁用构造 2 游戏动态生成的画布的触摸/单击事件,因为当我单击附加的 html 时,单击也会传播到游戏的画布元素。

我使用了 event.stopPropagation() 和 event.preventDefault() 函数,但无济于事。

4

3 回答 3

0

仅使用 css 作为pointer-events: none;

function func(){
console.log("clicked");
}
#myCanvas{
    border: 1px solid #000000;
    pointer-events: none;
}
#myCanvas2{
 border: 1px solid #000000;
}
<h2>With Css try to click me..</h2>
<canvas id="myCanvas" width="200" height="100" onclick="func()">
</canvas>


<h2>Without Css try to click me..</h2>
<canvas id="myCanvas2" width="200" height="100" onclick="func()">
</canvas>

于 2019-03-18T07:28:01.810 回答
0

添加css属性pointer-events: none

于 2019-03-18T16:50:26.730 回答
0

如果只是 Construct2 问题,我会说为每个单击事件添加条件,检查光标是否不在 HTML 元素上以激活画布事件,如果是则不激活。由于我不太确定问题出在哪里,所以我将把它留在那里,希望它有所帮助!

于 2019-04-13T13:34:45.140 回答