lufy's legend

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 8914|回复: 4

JS函数声明里面有参数,但是运行时却没有明显传参进去,...

[复制链接]

1

主题

0

好友

7

积分

士兵

Rank: 1

发表于 2014-1-26 11:50:34 |显示全部楼层
正在学习lufy的《HTML5 Canvas 游戏开发实战》,学习第五章“剪刀石头布”的时候,对以下代码有疑问。
代码如下:
btnBu.addEventListener(LMouseEvent.MOUSE_UP,onclick);
function onclick(event,display){
        var selfValue,enemyValue;
        if(display.name == "shitou"){
                selfValue = 0;
        }else if(display.name == "jiandao"){
                selfValue = 1;
        }else if(display.name == "bu"){
                selfValue = 2;
        }
        enemyValue = Math.floor(Math.random() * 3);
        selfBitmap.bitmapData = showList[selfValue];
        enemyBitmap.bitmapData = showList[enemyValue];
        var result = checkList[selfValue][enemyValue];
        if(result == -1){
                loss += 1;
        }else if(result == 1){
                win += 1;
        }else{
                draw += 1;
        }
        console.log(win + loss + draw);
        selfTextWin.text = "胜利次数:" + win;
        selfTextLoss.text = "失败次数:" + loss;
        selfTextDraw.text = "平局次数:" + draw;
        selfTextAll.text = "猜拳次数:" + (win + loss + draw);
}
上面的函数onclick(event,display)中display的值究竟是如何被传递进去的?
回复

使用道具 举报

46

主题

3

好友

1866

积分

偏将军

Rank: 4

发表于 2014-1-26 15:12:50 |显示全部楼层
在引擎内部,触发listener(onclick函数)时传的。
回复

使用道具 举报

0

主题

0

好友

8

积分

士兵

Rank: 1

发表于 2019-3-1 19:56:43 |显示全部楼层
我和楼主有相同的问题,求lufy大大赐教
回复

使用道具 举报

0

主题

0

好友

8

积分

士兵

Rank: 1

发表于 2019-3-1 20:04:51 |显示全部楼层
顺着API文档找了好久也没找到对于侦听器传参的解释,研究了几十分钟卡住了 = =
回复

使用道具 举报

37

主题

8

好友

9304

积分

诸侯王

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

发表于 2019-3-2 15:45:56 |显示全部楼层
ViridianFairy 发表于 2019-3-1 20:04
顺着API文档找了好久也没找到对于侦听器传参的解释,研究了几十分钟卡住了 = = ...

这是引擎的早期版本中添加的处理,后来加了鼠标容器(LMouseEventContainer),就把这部分处理去掉了,
但是即使在现在的版本中,如果在没有开启鼠标容器(LMouseEventContainer)的时候依然可以使用,只是文档中没有提起而已
不回答与技术和引擎不相关的问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

防止垃圾广告,请填写任意字符

Archiver|lufy's legend

GMT+8, 2024-3-28 17:43 , Processed in 0.053491 second(s), 23 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部