我使用此代码段将画布保存为图片:当我点击快照按钮时,id =" snap",FF(或窗口)中的新标签,在chrome中打开并调用图像。
document.getElementById('snap').addEventListener('click', function () {
stage.toDataURL({
callback: function call (dataUrl) {
window.open(dataUrl);
},
mimeType: 'image/png',
quality: 1
})
});
问题是IE9给了我一个错误并且没有显示该文件。错误表示打开文件需要一个软件。老实说,我不明白这个错误,微软正在谈论什么软件?如果有任何解决方案或解决方法,请提供帮助。
答案 0 :(得分:0)
似乎没有解决办法在IE中完全使用JS来解决这个问题... 这里有一个解决方案,使用php查询:
http://danielmclaren.com/node/90
<?php
/**
* an example URL for viewing a base64-encoded image:
* http://example.com/decode.php?image/png;base64,iVBORw0KGgoAAAANS...
*/
$data = split(";", $_SERVER["QUERY_STRING"]);
$type = $data[0];
$data = split(",", $data[1]);
header("Content-type: ".$type);
echo base64_decode($data[1]);
?>
答案 1 :(得分:0)
我没有在IE 中测试此解决方案,但它在Chrome 35.x中运行良好。
在jQueryUI对话框中显示图像,并提示用户执行右键单击,另存为。
网页代码:
<script srv='jquery-ui.js'></script>
<div id='ImageExportDialog'></div>
使用Javascript:
$('#ImageExportDialog').dialog({autoOpen:false, modal:true});
使用Javascript:
document.getElementById('ImageExportDialog').src = canvas.toDataURL();