希望有人有时间和知识来启发我。 看到: http://www.html5canvastutorials.com/kineticjs/html5-canvas-kineticjs-image-tutorial/:
有人知道在鼠标悬停在yoda图像上时,相对于图像位置获取鼠标光标位置的编程吗?
答案 0 :(得分:0)
以下是基于教程中的代码解决问题的方法。 解决方法是使用on(“mousemove”,function(event){})方法,该方法仅在鼠标悬停在图像上时调用。
希望它有所帮助。
<!DOCTYPE HTML>
<html>
<head>
<style>
body {
margin: 0px;
padding: 0px;
}
</style>
</head>
<body>
<div id="container"></div>
<script src="http://d3lp1msu2r81bx.cloudfront.net/kjs/js/lib/kinetic-v5.0.1.min.js"></script>
<script defer="defer">
var stage = new Kinetic.Stage({
container: 'container',
width: 578,
height: 200
});
var layer = new Kinetic.Layer();
var imageObj = new Image();
imageObj.onload = function() {
var yoda = new Kinetic.Image({
x: 200,
y: 50,
image: imageObj,
width: 106,
height: 118
});
yoda.on('mousemove', function(event) {
var relativeX = event.x - yoda.getX();
var relativeY = event.y - yoda.getY();
console.log("x : " + relativeX);
console.log("y : " + relativeY);
});
// add the shape to the layer
layer.add(yoda);
// add the layer to the stage
stage.add(layer);
};
imageObj.src = 'http://www.html5canvastutorials.com/demos/assets/yoda.jpg';
</script>
</body>
</html>