问题描述
为什么下面的示例在ie9中不起作用?
http://jsfiddle.net/dzyyd/2/
它吐出控制台错误:
\“意外调用方法或属性。\”
解决方法
我很快发现了它。您创建了元素,但是没有将其放置在任何地方。将其添加到文档主体后,一切似乎都很好。
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\");
, 这么小的代码片段很难分辨(对我而言,它不能在任何浏览器上运行),但是事件期间IE中的范围问题“ 1”与使用W3C的“ 1”完全不同。事件模型。请参阅:quirksmode-事件顺序-Microsoft模型的问题