- 注册时间
- 2018-2-24
- 最后登录
- 2020-4-3
- 阅读权限
- 20
- 积分
- 189
- 精华
- 0
- 帖子
- 40
|
lufy 发表于 2018-3-19 20:07
现在的扇形点击范围有点问题,现在就是整个圆的点击范围
所以,没办法简单的完成你想要的效果,只能自己 ...
大神帮我看一下这段代码,我想要给画出来的扇形循环添加mouseover 和 mouseout事件,获取每个nArrow的setColor,这样循环绑定事件获取到的一直是最后一个setColor,是什么原因呢?
var rainbow = new LSprite();
element.addChild(rainbow);
if(info.rainbowArray.length > 0){
for(var i = 0; i < info.rainbowArray.length; i++) {
var nArrow = new LSprite();
rainbow.addChild(nArrow);
nArrow.setColor = info.rainbowArray;
var l = info.rainbowArray.length;
var averageAngle = 180 / l;
var sAngle = i * averageAngle / 180 - 1/2;
var eAngle = (i+1) / l - 1/2;
if(i == 0) {
sAngle = -1;
}
if(i == info.rainbowArray.length - 1) {
eAngle = 1;
}
nArrow.graphics.drawArc(0, '#fff', [100, 50, 36, sAngle*Math.PI, eAngle*Math.PI, false, true], true, info.rainbowArray);
rainbow.visible = false;
nArrow.addEventListener(LMouseEvent.MOUSE_OVER, wf.mouseRainBowOver);
nArrow.addEventListener(LMouseEvent.MOUSE_OUT, wf.mouseRainBowOut);
}
}
|
|