这是一个我不明白的奇怪的错误。我正在成功使用Raphael.js图形库来创建一个在Sharepoint站点上托管的漂亮的UI交互。在本地运行时一切正常。但是,当我在Web服务器上运行HTML时,UI呈现但是我的UI按钮上的onclick函数(在这里,我称之为Raphael Circle对象的raphaelCircles)通常不起作用(我将解释我的内容)意思是“经常”在下面)。
raphaelCircle.node.onclick = function ()
{
//Do stuff. Works locally fine, but on on the Sharepoint website.
}
我尝试在我的脚本中添加一些setTimeouts,以便在分配onclick函数之前延迟脚本和XML加载,但无济于事。奇怪的是,有效的是当我在分配onclick后立即绘制一个矩形时:
var frame = _paperNodeLayer.rect(0, 0, _canvasWidth - 2, _canvasHeight - 2);
frame.attr('stroke', 'silver');
这很奇怪,就像我在分配点击处理程序后给予Raphael更多“do”,它可以在网站上运行。如果我不这样做,它只适用于本地。有任何想法吗?就像我说的,我想也许我试图在我的代码中做太多而且矩形的绘图减慢了它的速度,但我推迟了对象创建和点击分配,它似乎没有什么区别。只在屏幕上绘制一个矩形似乎有效。
感谢您提供的任何帮助。