我有在拉斐尔Paper.path()
一个充满纯朴的质地:Raphael.js图像填充不更新不断
var fill = screen.path(Iso.topFacePath(top)).attr({
fill: 'url(http://www.mydomain.com/mytexture.jpg)',
});
的路径可以由用户通过拖放来改变。为此,我使用Element.drag()
来绑定处理程序。
现在我介绍的问题是,当调用onmove
-handler函数时,将重新计算所讨论的元素,并且必须再次绘制。显然,这对raphael来说太“太”了,填充图案会随机消失(闪烁),并在一段时间后再次出现(最新的onend
)。
我实际使用的代码是有点太多,张贴在这里,但我建了一个fiddle(即仍然是一个有点乱,所以裸与我)在这里你可以看到发生了什么(你可以拖动四边形的上侧)。
有没有简单的解决方法呢?
我习惯画布比拉斐尔要多得多(实际上这是我第一次真正使用拉斐尔)所以也许我每次都在重绘所有东西的方法......很明显是错误的吗?
编辑:我刚刚发现,似乎与浏览器有关。 Chrome浏览器和Firefox将产生闪烁的地方,Safari似乎做的一切都很好。
非常感谢这个发现!我一直试图找到一个修复天,现在使用你的示例链接修改后的脚本,一切都很好:) – Andrej 2012-08-22 11:52:26