html5 画布中的基本 mouseover mouseout 事件对我不起作用
Posted
技术标签:
【中文标题】html5 画布中的基本 mouseover mouseout 事件对我不起作用【英文标题】:Basic mouseover mouseout events in html5 canvas don't work for me 【发布时间】:2017-11-26 21:30:03 【问题描述】:我正在为动画制作而苦苦挣扎,我通常是逐帧动画师,但我必须做一个 UI。
我创建了一个skitz,只是为了测试事件的工作方式,但我已经在第一步遇到了麻烦。 有一个图形布局,在它之上我创建了一个带有点击框的不可见按钮,我使用了这个 处理事件的代码:
*/* Mouse Over Event
Mousing over the symbol instance executes a function in which you can add your own custom code.
Instructions:
1. Add your custom code on a new line after the line that says "// Start your custom code" below.
The code will execute when the symbol instance is moused over.
frequency is the number of the times event should be triggered.
*/
var frequency = 3;
stage.enableMouseOver(frequency);
this.button_1.addEventListener("mouseover", fl_MouseOverHandler_3);
function fl_MouseOverHandler_3()
// Start your custom code
// This example code displays the words "Moused over" in the Output panel.
this.gotoandplay(113);
// End your custom code
*
这是来自工作区的图像: image
对于鼠标悬停,我不知道为什么 animate 会显示“this.button_1”,因为我在使用代码 sn-p 时检查的按钮称为“sirtonim”,我尝试更改它,但是当我这样做时,事件甚至不会停留在这一帧。 (我有另一个使用 this.stop(); 处理框架的操作)
我无法通过 mouseout 事件对其进行测试,也许它有效,也许它不起作用。
先谢谢了!
【问题讨论】:
我已经通过在这部分添加 '.bind(this)' 来修复鼠标悬停事件:"mouseover", fl_MouseOverHandler_3 【参考方案1】:好的,我已经通过以下方式解决了这两个问题:
在事件名称后添加.bind(this)
。
我还注意到,鼠标移出事件的唯一错误是我选择的帧号,在 html5 画布中,帧从零开始,所以如果你想到达帧 112,你需要写 111,少 1 个。
【讨论】:
以上是关于html5 画布中的基本 mouseover mouseout 事件对我不起作用的主要内容,如果未能解决你的问题,请参考以下文章