Javascript SCRIPT87:IE8中使用HighCharts v3.0.5的参数无效
使用highcharts的源版本,我发现我在以下方面出现了此错误: highcharts.src.js,第5099行,字符4 这在var VMLRenderExtension块中: 错误出现在doc.createStyleSheet.cssText项上。不知道它的哪一部分正在死亡 我们的页面上有两个图表。主数据图表和跨区域数据分布图表。如果我只显示一个或另一个图表,意味着甚至不在页面上呈现一个图表,我不会得到这个错误。如果两个图表都呈现出来,我会按照执行顺序得到第一个图表,但不会得到第二个。我们的图表代码可以找到。请注意,我无法在JSFIDLE上重现此错误。此错误仅在IE8中发生 我在海图论坛上看到了这一点。我无法更改文档类型,因为我的代码只是较大站点的一小部分。不显示错误的唯一方法是注释掉doc.createStyleSheet.cssText行。我宁愿不只是评论这一点Javascript SCRIPT87:IE8中使用HighCharts v3.0.5的参数无效,javascript,jquery,highcharts,Javascript,Jquery,Highcharts,使用highcharts的源版本,我发现我在以下方面出现了此错误: highcharts.src.js,第5099行,字符4 这在var VMLRenderExtension块中: 错误出现在doc.createStyleSheet.cssText项上。不知道它的哪一部分正在死亡 我们的页面上有两个图表。主数据图表和跨区域数据分布图表。如果我只显示一个或另一个图表,意味着甚至不在页面上呈现一个图表,我不会得到这个错误。如果两个图表都呈现出来,我会按照执行顺序得到第一个图表,但不会得到第二个。我们
现在,这就是它变得丑陋的地方。这只发生在这一页上。如果我们转到显示数据的任何其他页面,我不会得到这个错误。那又怎样,你说。嗯,图表生成器代码在每一页上都是相同的。唯一的区别是系列类别和数值以及图表的高度。我们根据需要的系列数量动态增加图表的高度,以使文本更易于阅读。我测试了这个数据集的分布图中不同数量的类别,这些类别没有抛出这个错误。如果我转到其他页面并尝试匹配失败页面上图表的高度,我也无法再现此错误。比较工作页面和非工作页面之间的以下项目: 博士类型 脚本标记 元标记 我在IE8中打开了这个exmaple,并且没有出现错误,那么我如何重新解释这个问题呢?
init: function (container, width, height) {
var renderer = this,
boxWrapper,
box;
renderer.alignedObjects = [];
boxWrapper = renderer.createElement(DIV);
box = boxWrapper.element;
box.style.position = RELATIVE; // for freeform drawing using renderer directly
container.appendChild(boxWrapper.element);
// generate the containing box
renderer.isVML = true;
renderer.box = box;
renderer.boxWrapper = boxWrapper;
renderer.setSize(width, height, false);
// The only way to make IE6 and IE7 print is to use a global namespace. However,
// with IE8 the only way to make the dynamic shapes visible in screen and print mode
// seems to be to add the xmlns attribute and the behaviour style inline.
if (!doc.namespaces.hcv) {
doc.namespaces.add('hcv', 'urn:schemas-microsoft-com:vml');
// setup default css
doc.createStyleSheet().cssText =
'hcv\\:fill, hcv\\:path, hcv\\:shape, hcv\\:stroke' +
'{ behavior:url(#default#VML); display: inline-block; } ';
}
}