1

我有一个页面可以在 Firefox 和 IE7/IE8 标准中显示,但不能在 Quirks 模式或 IE9 中显示。我还需要它来正确显示 Quirks。问题是不显示 Dojo 图表和图例“图像”(图例标签在那里,只是没有线条颜色的图标)。我尝试过使用这些样式,但还没有找到可以显示这两个项目的样式。我现在的风格有问题吗?我的问题与 Dojo 或 Quirks 模式有关吗?我正在使用 Dojo 1.5.2。

我注意到的一些奇怪的事情是,如果我打开 IE 开发工具栏并取消选中任何样式框(宽度、填充、位置等),那么图像就会显示出来。我取消勾选哪个框似乎并不重要,如果我再次勾选它,或者我选择的样式是否甚至适用于 chartDiv。图像将显示,直到我刷新页面。我不确定这意味着什么或如何在页面首次加载时模拟这种效果。

var chartContainer = dojo.create("div", {id:"HistoryChart", style:{}}, document.getElementById("HistoryChart"));
var overalChartDiv = dojo.create("div", {style:{clear:"both",width:"850px",height:"300px", margin:"15px 0 0 0"}}, chartContainer);
var chartLabelDiv = dojo.create("div", {style:{float:"left", margin:"75px 0 0 0"}}, overalChartDiv);
var chartDiv = dojo.create("div", {style:{width:"800px", height:"300px", float:"left", margin:"0 0 0 0"}}, overalChartDiv);


    dojo.create("img", {src:"images/label.gif",style:{}}, chartLabelDiv);


    //Create line chart
    var lineChart = new dojox.charting.Chart2D(chartDiv);
    lineChart.addAxis("x", xAxisTheme);
    lineChart.addAxis("y", yAxisTheme);
    lineChart.addPlot("default", {type: "Lines", lines:true, markers:true});
    lineChart.addPlot("grid", {type: "Grid", hMajorLines: true, hMinorLines:false, vMajorLines: false, vMinorLines: false});
    lineChart.addSeries('Avg', avgValues, {legend:"Avg", color:"green"});
    lineChart.addSeries('Max', maxValues, {legend:"Max", color:"red"});
    lineChart.addSeries('Min', minValues, {legend:"Min", color:"blue"});
    var valueTip = new dojox.charting.action2d.Tooltip(lineChart,"default");
    lineChart.render();

    // Create legend
    var legend = dojo.create("div", {style:{}}, chartContainer);
    var led = new dojox.charting.widget.Legend({chart: lineChart, outline: true, horizontal:true, outline:true, style:{margin:"0px 400px"}}, legend);
4

1 回答 1

0

我在 Dojo 1.5.2 中进行了测试,但在最近的版本中似乎运行良好。请参阅:http: //archive.dojotoolkit.org/nightly/dojotoolkit/dojox/charting/tests/test_legend.html此测试在 Quirks 模式下使用 IE7/8 加载良好。不知道这里发生了什么。

于 2012-09-22T08:20:16.347 回答