我有以下基于RaphaelJS的路径
var myPath = ctx.path("M 15 15 l 240 0 l 60 215 l -300 -70 z");
在以下'画布'
var ctx = new Raphael(document.getElementById('myCanvasId'));
ctx.setViewBox(0,0,w,h,true);
ctx.setSize('100%', '100%');
问题是,我无法在画布上获取新的附加元素以触发我放在myPath上的onDragOver事件,这很简单:
myPath.onDragOver(function(e) { alert('fired'); });
元素创建是动态完成的,元素上的绑定也是如此。它们存储在变量中,可以在定义之后的任何地方访问。
元素由:
创建ctx.rect((positionBox.x2 - positionBox.x) / 2 + randomX, (positionBox.y2 - positionBox.y) / 2 + randomY, postitSize.x, postitSize.y)
并且阻力被
绑定postIts[postItCount]['item'].drag(move, start, up);
拖动处理事件函数是
var start = function () {
this.odx = 0;
this.ody = 0;
this.animate({"fill-opacity": 0.8}, 200);
},move = function (dx, dy) {
this.translate(dx - this.odx, dy - this.ody);
this.odx = dx;
this.ody = dy;
},
up = function () {
this.animate({"fill-opacity": 1}, 200);
console.log('end', this.odx, this.ody);
};
当我将创建的元素拖到我使用onDragOver绑定的元素上时,无论如何都不会触发任何内容。
我有什么遗失的吗?
提前致谢。