我遇到了Internet Explorer和Canvas的问题。当我在任何其他浏览器中测试它时,它可以工作。只是IE给了我适合。 这是我的Javascript函数的实现。
<script type="text/javascript">
var szorientation;
szorientation="l";
/*****************************************************************
* This is the function that will take care of image extracting and
* setting proper filename for the download.
* IMPORTANT: Call it from within a onclick event.
*****************************************************************/
function downloadCanvas(link, canvasId, filename) {
link.href = document.getElementById(canvasId).toDataURL("image/jpeg");
link.download = filename;
}
function begin(){
initcanvas();
}
</script>
这就是它被召唤的地方。我哪里错了?
<script>
//Download image to user
document.getElementById('myalink').addEventListener('click', function() {
downloadCanvas(this, 'memcanvas', 'mypic.jpg');
}, false);
var imageLoader = document.getElementById('imageLoader');
imageLoader.addEventListener('change', handleImage, false);
document.addEventListener('DOMContentLoaded',domloaded,false);
function domloaded(){
// your code here.
begin();
}
</script>
提前致谢!
答案 0 :(得分:0)
IE尚不支持download
属性,因此您的代码无法在IE中使用。
你可以使用Eli Gray的这个很好的解决方法让IE用户将你的画布下载到他们的本地驱动器:
https://github.com/eligrey/FileSaver.js
或者你可以去“老派”并在另一个浏览器标签中打开canvas.toDataURL
作为图片,然后让用户右键点击另存为“该图片”。