【发布时间】:2013-12-17 06:44:14
【问题描述】:
我正在尝试导出高图后获取图像 URL。
代码适用于 Firefox,但不适用于 IE9。
示例代码:http://jsfiddle.net/highcharts/DXQSU/
var options = {
exporting: {
url: 'http://export.highcharts.com/'
},
xAxis: {
categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
},
series: [{
data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]
}]
};
$('#export').click(function () {
var obj = {},
exportUrl = options.exporting.url;
obj.options = JSON.stringify(options);
obj.type = 'image/png';
obj.async = true;
$.ajax({
type: 'post',
url: exportUrl,
data: obj,
success: function (data) {
var imgContainer = $("#imgContainer");
$('<img>').attr('src', exportUrl + data).attr('width', '250px').appendTo(imgContainer);
$('<a>or Download Here</a>').attr('href', exportUrl + data).appendTo(imgContainer);
}
});
});
【问题讨论】:
-
很抱歉,图表没有存储在我们的服务器上,所以像“从链接下载”这样的解决方案是非常糟糕的主意。每分钟,临时文件夹中的图像都会被删除并且永远不会回来。见privacy disclaimer。
-
这是一次性过程。我们不需要每次都调用服务器来下载图像。 Firefox 提供了图片链接以供下载,而 IE9 则没有。不知道为什么?
-
阅读jQuery ticket。尝试使用 xdr 插件。
-
有没有IE9的示例代码。我们需要在“export.highcharts.com”上发布数据,这又不是我们的服务器。
-
你需要调整你的 $ajax() 以兼容 ie9,类似主题stackoverflow.com/questions/12592209/…
标签: highcharts