使用Internet Explorer v11时,当我访问部署在远程IIS7服务器中的d3网站时,出现“'d3'未定义”错误。 但是,使用Internet Explorer v11时,当我访问部署在本地IIS7服务器中的d3网站时,没有“'d3'未定义”错误。
而且,使用Firefox和Chrome时,当我访问部署在我的远程和本地IIS7服务器中的d3网站时,没有这个“'d3'未定义”错误。
也就是说,在我的本地服务器上使用“localhost”,我的d3网站运行正常。但是,当我尝试从远程计算机访问服务器时,我得到了这个“'d3'未定义”错误。此问题仅发生在IE中,而不是在Firefox和Chrome中。
我尝试了以下方法,但这个问题仍然存在。
< meta http-equiv="content-type" content="text/html; charset=UTF-8" >
< script src="JavaScript/d3.v3.min.js" charset="utf-8 >< /script >
< script src="http://d3js.org/d3.v3.min.js" charset="utf-8" >< /script >
然后我发现这个问题是由d3.v3.js中的代码引起的:
......try {
d3_document.createElement("DIV").style.setProperty("opacity", 0, "");
} catch (error) {
var d3_element_prototype = this.Element.prototype, d3_element_setAttribute = d3_element_prototype.setAttribute, ......
此代码创建错误“Object不支持属性或方法'setProperty”,因为d3_document.createElement(“DIV”)。style在IE11中没有带有.NET Framework 3.5的setProperty()
但是如何解决这个问题呢?谁能帮我?这个问题困扰了我好几天。 非常感谢。
格雷格。