[]遇到一个关于父节点和子节点点击的问题
这里是伪代码:
var bigSprite = new sprite();
var smalla = new sprite();
bigSprite.addchild(smalla);
var smallb = new sprite();
bigSprite.addchild(smallb);
var smallc = new sprite();
bigSprite.addchild(smallc);
意思是一个大的sprite:bigSprite
里面包含三个小的sprite:smalla ,smallb ,smallc
给sprite:bigSprite加上一个mousemouve事件bigclick
每一个小sprite也都加上mousedown事件
function bigclick(e){
var thex = e.target.mouseX
}
遗憾的是如果点击的位置没有小sprite那成功得到了相对bigSprite的X坐标。但是如果那里有小sprite比如smalla,
那么得到的这个坐标是相对smalla的。
怎么破。
有的时候是必须要得到父元素的点击位置的,比如一个页面,上划动作是mousedown和mouseup组成的,但是这个页面上也可能有一些小按钮之类的可以点击的东西。
之前用其他引擎的时候没有这个问题,谁身上的方法得到的就是相对谁的坐标,父元素的mouse方法,你点击鼠标就算碰到子元素,得到的也是相对父元素的坐标
var bigSprite = new sprite();
var smalla = new sprite();
bigSprite.addchild(smalla);
var smallb = new sprite();
bigSprite.addchild(smallb);
var smallc = new sprite();
bigSprite.addchild(smallc);
意思是一个大的sprite:bigSprite
里面包含三个小的sprite:smalla ,smallb ,smallc
给sprite:bigSprite加上一个mousemouve事件bigclick
每一个小sprite也都加上mousedown事件
function bigclick(e){
var thex = e.target.mouseX
}
遗憾的是如果点击的位置没有小sprite那成功得到了相对bigSprite的X坐标。但是如果那里有小sprite比如smalla,
那么得到的这个坐标是相对smalla的。
怎么破。
有的时候是必须要得到父元素的点击位置的,比如一个页面,上划动作是mousedown和mouseup组成的,但是这个页面上也可能有一些小按钮之类的可以点击的东西。
之前用其他引擎的时候没有这个问题,谁身上的方法得到的就是相对谁的坐标,父元素的mouse方法,你点击鼠标就算碰到子元素,得到的也是相对父元素的坐标
没有找到相关结果
已邀请:
要回复问题请先登录
1 个回复
cuixueying
赞同来自:
把e.target改成e.currentTarget,target点击的是最底层显示对象,e.currentTarget是点击的当前显示对象,有问题我们再沟通!