如何在代码中触发一个鼠标点击事件?

考虑做一个自动化测试,如何在代码中触发一个鼠标点击事件?

PS:目前有计划做一个适用于Cocos Creator自动化测试的框架吗?

http://www.cocos.com/docs/creator/scripting/internal-events.html

这个主要关注与事件的监听以及自定义事件的派发。我现在比较想了解的是内置事件的派发要怎么写。

试试看

this.node.emit(‘touchstart’)

试了一下不行。。。。

emit一个事件,就是这样

跟了一个emit的代码,好像emit只能是Custom?

感觉实在找不到办法,只能直接强行调用clickEvents了

搞不懂你在干什么。。。

建一个demo,上面一个按钮,按钮加上一个响应事件。

现在要做的就是,从代码里面自动触发这个响应事件,不修改原来的逻辑。

emit实测是不行的,你试过是可以的?

刚刚测试了,的确是用button组件所在的节点发送事件,不过只发送touchstart事件是不会触发回调的,必须在发送touchstart事件之后在发送touchend事件,就可以模拟点击了

button.node.emit('touchstart');
button.node.emit('touchend');
1赞

自己 new 一个 MouseEvent,然后 node.dispatchEvent(event) 试试

谢谢~~

我用的1.4的版本,试过这样,好像过不去,具体忘记哪儿直接return了。

后来用直接找clickEvents直接调用的方法实现了:)

谢谢,我有空试试这个方案。

试过了 不行.
this.readyBtn.dispatchEvent(new MouseEvent(MouseEvent.CLICK));

无法触发点击事件

试过了 不行, 无法触发点击事件,
this.readyBtn.emit(‘click’);
也是不行

请问有找到解决方法了吗

系统事件里没有‘click’这个事件啊,你没看我上面的回复吗?用touchstart加touchend来模拟点击

autoTouch.zip (261.7 KB)

demo拿去不谢,可能我们用的不是一个版本的软件