- 注册时间
- 2013-2-13
- 最后登录
- 2023-10-13
- 阅读权限
- 200
- 积分
- 9359
- 精华
- 1
- 帖子
- 2411
    
|
发表于 2013-3-22 22:55:21
|显示全部楼层
关于lufylegend.js中的鼠标事件需要注意的地方。
在一些浏览器中,可以直接通过event来获取鼠标事件的属性,但是这种方法是无法适用于所有浏览器的,比如在lufylegend.js中下面这样的代码是不正确的。- backLayer.addEventListener(LMouseEvent.MOUSE_DOWN,onDown);
- function onDown(){
- alert(event.offsetX);
- alert(event.offsetY);
- }
复制代码 因为这个event并不是所有浏览器都能用的。
正确的写法如下:- backLayer.addEventListener(LMouseEvent.MOUSE_DOWN,onDown);
- function onDown(e){
- alert(e.offsetX);
- alert(e.offsetY);
- }
复制代码 这样,必须通过参数来获取事件。
有朋友又要说了,offsetX,offsetY也不是所有浏览器都能用的啊!!
这里要说明一下,这里的offsetX和offsetY并不是大家所知道的事件属性,为了让鼠标事件在所有浏览器下都适用,lufylegend.js中将不同浏览器下的响应的属性进行了转换,这里的offsetX和offsetY都是经过转换而来的,所以适用于所有浏览器。
另外,有很多人问过我在lufylegend.js中除了mouse事件之外,有没有touch事件,这个在API文档中有说明,如下。- lufylegend.js引擎内有LMouseEvent.TOUCH_START , LMouseEvent.TOUCH_END , LMouseEvent.TOUCH_MOVE 三个移动触屏事件,不过引擎可以自动转换pc和手机的事件,就是说开发的时候只需要添加 LMouseEvent.MOUSE_DOWN , LMouseEvent.MOUSE_MOVE和LMouseEvent.MOUSE_UP 这三个鼠标事件,当游戏运行在手机上的时候,会自动将鼠标事件转换为touch事件。
复制代码 |
|