0
在下面的例中,有两种形状,矩形和半透明圆: http://jsfiddle.net/cequiel/zZ22s/Kineticjs:避免的形状接收任何鼠标事件
var stage = new Kinetic.Stage({
container: 'canvas',
width: 800,
height: 600
});
var layer = new Kinetic.Layer();
// adds a rectangle
var rect = new Kinetic.Rect({
x: 100,
y: 50,
width: 200,
height: 150,
fill: 'yellow',
stroke: 'black'
});
rect.on('mousedown', function() {
$('#text').text('mouse down');
}).on('mouseup', function() {
$('#text').text('mouse up');
}).on('mouseenter', function() {
$('body').css('cursor', 'pointer');
$('#text').text('mouse enter');
}).on('mouseleave', function() {
$('body').css('cursor', 'default');
$('#text').text('mouse leave');
});
layer.add(rect);
// adds a semitransparent circle
var circ = new Kinetic.Circle({
x: 300,
y: 125,
radius: 60,
fill: 'green',
stroke: 'black',
opacity: 0.2,
locked: true
});
layer.add(circ);
stage.add(layer);
的矩形捕获鼠标向下,向上,进入和离开事件。但是当鼠标在圆上时,该矩形不会收到任何事件。这很好。但是,我怎么能避免这种情况?我的意思是,我怎么能让这个圆圈对鼠标事件“隐形”?我正在寻找类似于AS3中定义的'mouseEnabled'属性的东西: http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/InteractiveObject.html#mouseEnabled
谢谢。
非常感谢您!你是我的偶像:)这解决了我的问题。 – Cequiel