1


使用 Kinetic,是否可以在文本上设置鼠标悬停?下面的代码不起作用。如果用矩形替换文本,它工作正常。

...
var layer = new Kinetic.Layer();

var test = new Kinetic.Text({
    x: 20,
    y: 20,
    text: "test",
    textFill:"black"
});

test.on("mouseover", function(){
    alert("mouseover");
});

layer.add(test);

谢谢您的帮助!

更新:

好的,我搜索了一下,似乎有必要使用像素检测。

有关更多详细信息,请参阅本教程

结果目前并不完美,但总比没有好。

4

1 回答 1

3

我在处理类似的文本行为时遇到了麻烦,在深入了解存储库历史之后,我发现现在 Text 默认将 detectionType 设置为“像素”。

尝试更改您的 Text 声明,如下所示:

var test = new Kinetic.Text({
    x: 20,
    y: 20,
    text: "test",
    textFill: 'black',
    detectionType: 'path',
    draggable: true         
});
于 2012-06-26T15:03:49.437 回答