cocosjs 可不可以将一个事件添加给多个节点

cocosjs 可不可以将一个事件添加给多个节点,第1张

在使用时,首先创建一个事件监听器,事件监听器包含以下几种:

触摸事件 (cc.EventListenerTouch)

键盘响应事件 (cc.EventListenerKeyboard)

加速记录事件 (cc.EventListenerAcceleration)

鼠标响应事件 (cc.EventListenerMouse)

自定义事件 (cc.EventListenerCustom)

以上事件监听器统一由 cc.eventManager 来进行管理, 它是一个单例对象。它的工作需要三部分组成:

事件管理器 cc.eventManager

事件类型 cc.EventTouch, cc.EventKeyboard 等

事件监听器 cc.EventListenerTouch, cc.EventListenerKeyboard 等

监听器实现了各种触发后的逻辑,在适当时候由 事件管理器分发事件类型,然后调用相应类型的监听器。

使用方法

现在将要实现在一个界面中添加三个按钮,三个按钮将会互相遮挡,并且能够触发触摸事件,以下是具体实现

首先创建三个精灵,作为三个按钮的显示图片

var sprite1 = cc.Sprite.create("Images/CyanSquare.png")

sprite1.x = size.width/2 - 80

sprite1.y = size.height/2 + 80

this.addChild(sprite1, 10)

var sprite2 = cc.Sprite.create("Images/MagentaSquare.png")

sprite2.x = size.width/2

sprite2.y = size.height/2

this.addChild(sprite2, 20)

var sprite3 = cc.Sprite.create("Images/YellowSquare.png")

sprite3.x = 0

sprite3.y = 0

sprite2.addChild(sprite3, 1)

先是:

document.createElement(eleNode)方法:创建一个元素节点eleNode

document.createTextNode(textNode)方法:创建一个文本节点textNode

document.createDocumentFragment()方法:创建文档碎片节点

然后将这个节点添加到其父节点下:

eleNode.appendChild(textNode)方法:将textNode节点添加到childNodes的末尾

其实,一开始你要决定在那个父节点下增加节点,先是找到父节点。

如果需要用原生js动态的加载另外一个js文件,可以使用原生js的document.createElement方法创建script节点,然后更改该节点的type和src属性,最后通过appendChild方法将该节点动态添加到html中,这样就可以了,参考代码如下:

var new_element = document.createElement("script")//创建新的script节点new_element.setAttribute("type", "text/javascript")new_element.setAttribute("src", "../js/jquery.js")document.body.appendChild(new_element)//添加到body节点的末尾

上例中是在body的最末尾添加的,当然同样可以在head中添加引用该js的标签:document.head.appendChild(new_element)


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11650987.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存