我在两个选项卡中使用两个相同的脚本,以便在每个选项卡中创建一个Dojo图表:tabs page .
如果您使用Google Chrome、Safari打开页面,则两个选项卡都会呈现图表。
如果您用Firefox打开它,第二个选项卡不会呈现它的图表。如果您用Explorer 11打开它,第二个选项卡会以随机大小呈现它的图表。
有人能告诉我为什么我在第二个选项卡中得到这个错误吗?
我所有的浏览器都更新到最新版本了。
该脚本使用最新版本的dojo jquery:
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://js.arcgis.com/3.20/esri/themes/calcite/dijit/calcite.css">
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/dojo/1.13.0/dojo/dojo.js"></script>
<script>
require([
"dojox/charting/Chart",
"dojox/charting/Chart2D",
"dojox/charting/action2d/MoveSlice" ,
"dojox/charting/action2d/Tooltip",
"dojo/ready"],
function(Chart, Chart2D, MoveSlice, Tooltip, ready){
ready(function(){
var chart1 = new Chart("He1");
chart1.addPlot("default", {
type: "Pie"
});
chart1.addSeries("He1", [
{y: 1, text: 1},
{y: 1, text: 2}
]);
new Tooltip(chart1, "default");
new MoveSlice(chart1, "default");
chart1.render();
});
});
</script>
</head>
<body class="calcite">
<div>
<div id="He1" style="width: 140px; height: 140px; "></div>
</div>
</body>
</html>
1条答案
按热度按时间ux6nzvsh1#
若要在可折叠中创建多个图表,请创建适当的布局,然后初始化图表和 Package 它们的可折叠容器。
例如,您可以修改布局以
然后像以前一样创建
He1
和He2
图表,最后初始化accordion和面板,如下所示:参见此处的工作示例:https://jsfiddle.net/1k6w8otn/4
注意,它不需要任何
iframe
。我强烈主张使用任何构建器进行纯编程(正如你在评论中提到的)通常会导致意大利面代码,很多时候你会让自己无法修复它。Dojo工具包也远非最佳选择,它是目前的利基库(没有最新的书籍,几乎没有社区背后等),如果你不是被迫使用它,做一些研究,并寻找更好的JS库。