仅最顶部精灵的 Pixi js 鼠标事件
Pixi js mouse events for top most sprite only
我注意到在 pixi.js 版本 1.3 中,如本示例所示,堆叠精灵,然后单击并拖动只会拖动最上面的精灵。
bunny.mousedown = bunny.touchstart = function(data)
{
// data.originalEvent.preventDefault()
// store a refference to the data
// The reason for this is because of multitouch
// we want to track the movement of this particular touch
this.data = data;
this.alpha = 0.9;
this.dragging = true;
this.sx = this.data.getLocalPosition(bunny).x * bunny.scale.x;
this.sy = this.data.getLocalPosition(bunny).y * bunny.scale.y;
};
http://jsfiddle.net/dirkk0/cXfpq/
在版本 3.0.3 中,如本示例所示,相同的代码会导致拖动鼠标下的所有精灵。
http://jsfiddle.net/9tnaa31z/5/
有没有办法只获取最顶部的精灵或获取所有精灵列表的方法(按渲染顺序)?
我认为 3.0.3 版本的 PIXI 可能存在错误。我刚刚用最新的 3.0.5 试了一下,它按预期工作,即它只拖动最上面的 Sprite
.
用这个latest version of Pixi.js更新你fiddle中的外部资源,它应该可以工作。
我注意到在 pixi.js 版本 1.3 中,如本示例所示,堆叠精灵,然后单击并拖动只会拖动最上面的精灵。
bunny.mousedown = bunny.touchstart = function(data)
{
// data.originalEvent.preventDefault()
// store a refference to the data
// The reason for this is because of multitouch
// we want to track the movement of this particular touch
this.data = data;
this.alpha = 0.9;
this.dragging = true;
this.sx = this.data.getLocalPosition(bunny).x * bunny.scale.x;
this.sy = this.data.getLocalPosition(bunny).y * bunny.scale.y;
};
http://jsfiddle.net/dirkk0/cXfpq/
在版本 3.0.3 中,如本示例所示,相同的代码会导致拖动鼠标下的所有精灵。
http://jsfiddle.net/9tnaa31z/5/
有没有办法只获取最顶部的精灵或获取所有精灵列表的方法(按渲染顺序)?
我认为 3.0.3 版本的 PIXI 可能存在错误。我刚刚用最新的 3.0.5 试了一下,它按预期工作,即它只拖动最上面的 Sprite
.
用这个latest version of Pixi.js更新你fiddle中的外部资源,它应该可以工作。