使用 Konva 的 HTML5 Canvas 触发事件
要使用 Konva 触发事件,我们可以使用 fire()
方法。
这使我们能够以编程方式触发事件,如 click
、mouseover
、mousemove
等,
还可以触发自定义事件,如 foo 和 bar。
Konva Fire_Events 演示view raw<!DOCTYPE html> <html> <head> <script src="https://unpkg.com/konva@9.3.18/konva.min.js"></script> <meta charset="utf-8" /> <title>Konva Fire Event Demo</title> <style> body { margin: 0; padding: 0; overflow: hidden; background-color: #f0f0f0; } </style> </head>
<body> <div id="container"></div> <script> var stage = new Konva.Stage({ container: 'container', width: window.innerWidth, height: window.innerHeight, });
var layer = new Konva.Layer();
var circle = new Konva.Circle({ x: stage.width() / 2, y: stage.height() / 2 + 10, radius: 70, fill: 'red', stroke: 'black', strokeWidth: 4, });
var text = new Konva.Text({ text: '', fontFamily: 'Calibri', fontSize: 24, fill: 'black', x: 10, y: 10, });
circle.on('click', function (evt) { text.text('you clicked on the circle!'); });
layer.add(circle).add(text); stage.add(layer);
circle.fire('click'); </script> </body> </html>
|