代码改变世界

cocos2d JS 鼠标响应事件

2017-08-01 00:28  罗任德  阅读(1366)  评论(0编辑  收藏  举报

对于PC和超级本,添加鼠标事件的的处理,可以加强用户的体验,其处理逻辑与触摸事件基本一样,多了一些鼠标特有的事件响应

如滚轮事件(onMouseScroll)

 

cc.eventManager.addListener({
        event: cc.EventListener.MOUSE,
        onMouseMove: function(event){
            var str = "MousePosition X: " + event.getLocationX() + "  Y:" + event.getLocationY();
            // do something...
        },
        onMouseUp: function(event){
            var str = "Mouse Up detected, Key: " + event.getButton();
            // do something...
        },
        onMouseDown: function(event){
            var str = "Mouse Down detected, Key: " + event.getButton();
            // do something...
        },
        onMouseScroll: function(event){
            var str = "Mouse Scroll detected, X: " + event.getLocationX() + "  Y:" + event.getLocationY();
            // do something...
        }
    },this);


/*
注意: 由于在PC浏览器中,没有触摸事件,而此时强制要求用户写鼠标事件的响应代码,必然会让开发者多写很多代码
事实上触摸响应的逻辑与鼠标相差不大,所以引擎在检测到不支持触摸事件时,会让鼠标事件模拟成触摸事件进行分发
我们只需编写触摸事件监听器就能完成大部分工作,而对于针对鼠标操作而设计的游戏,需要判断用户按下什么键,响应滚轮等,这就需要我们编写鼠标事件监听器了。
*/