是否可以使用 jQuery 引用在 HTML5 画布元素上绘制的图形?这是我为 EaselJS 编写的一个函数,它遍历一个包含矢量坐标数组的对象:
function newShape(obj,shape,coords){
obj.graphics.beginFill('green');
obj.alpha = 0.05;
for (var i=0; i<coords[shape].length; i+=2) {
var arr = coords[shape].slice(i,i+2);
obj.graphics.lineTo(arr[0],arr[1]);
}
obj.graphics.closePath();
obj.graphics.endFill();
stage.addChild(obj);
}
坐标对象看起来像这样,有 100 个点:
var coords = {};
coords['0'] = [214,266,214,291,194,291];
coords['1'] = [243,1,254,2,278,9,290,14];
coords['2'] = [109,112,116,114,129,117];
和舞台:
canvas = document.getElementById("canvas");
stage = new createjs.Stage(canvas);
shape1 = new createjs.Shape();
shape2 = new createjs.Shape();
shape3 = new createjs.Shape();
newShape(shape1,'shape1',coords);
newShape(shape2,'shape2',coords);
newShape(shape3,'shape3',coords);
我可以为点击/触摸事件添加侦听器到渲染的形状,但是我希望能够将每个图形作为 DOM 元素引用,以便与 Bootstrap Popover 和 niceScroll 等插件一起使用,例如$(shape1).popover('show');
...... 我一直在积极研究一个没有成功的解决方案,任何帮助将不胜感激!