raphael text()在ie9中不起作用

时间:2011-05-30 16:51:46

标签: text internet-explorer-9 raphael

为什么以下示例在ie9中不起作用?

http://jsfiddle.net/dzyyd/2/

它吐出一个控制台错误:

  

“对方法或属性访问的意外调用。”

2 个答案:

答案 0 :(得分:1)

我发现它很快。你创建了元素,但没有把它放在任何地方。一旦将其添加到文档正文中,一切似乎都很好。

this._width=300;
this._height=300;
this._bgSvgContainer = document.createElement("div");
//NOTE: add the created div to the body of the document so that it is displayed
document.body.appendChild(this._bgSvgContainer);
var bgCanvas = Raphael(this._bgSvgContainer, this._width, this._height);
this._bgCanvas = bgCanvas;
var num = this._bgCanvas.text(this._width-10,this._height-10,"1");

答案 1 :(得分:0)

很难说这么小的代码片段(不能在我的任何浏览器上运行),但它可能是事件中IE中的范围问题this与{{1}完全不同使用W3C事件模型。请参阅:quirksmode-Event order - Microsoft模型的问题