javascript - html2canvas + FileSaver 浏览器问题

标签 javascript jquery html2canvas filesaver.js

我目前正在使用 html2canvas 和 FileSaver,以在单击按钮时保存生成的 Canvas 。将弹出一个对话框,用户可以选择保存图像的位置并根据需要重命名。它在 Firefox 中完美运行。我似乎无法让它在 Chrome、IE 或 Safari 中工作。

html2canvas 将发挥其作用,并在所有这些浏览器中从 div 创建图像。 FileSaver 对话框在上述浏览器中不起作用。

有什么想法吗?我已附上我的脚本。您可以在这里查看我的完整工作代码: https://jsfiddle.net/ticklishoctopus/556etja4/

脚本(在之前的 SO 帖子的一些帮助下):

$(function () {
    $("#btnSave").click(function () {
       html2canvas($("#testbtn"), {
           onrendered: function (canvas) {
               theCanvas = canvas;
               document.body.appendChild(canvas);

               canvas.toBlob(function (blob) {
                   saveAs(blob, "testimage.jpg");
               });
            }
         });
     });
});

最佳答案

已实现 Chrome 不支持 toBlob。使用这个代替: Possible Solution

关于javascript - html2canvas + FileSaver 浏览器问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37579123/

相关文章:

javascript - 用一个函数移动多个像矩阵样式背景的 div

javascript - EmberJS 控制台错误-加载路由 : undefined 时出错

javascript - 如何模拟点击下拉列表?

javascript - 对于 html2canvas 字体系列不起作用

javascript - 来自 firebase 的图像的 html2canvas jsPdf 访问错误

javascript es6 promise 在while循环中调用异步操作

javascript - 用于获取正在单击的按钮附近的 'a' 标签的 href 的 jquery 代码

javascript - Div 占用了额外的空间

javascript - 如何使用 Bootstrap 将图像显示为弹出窗口

javascript - 如何使用jspdf在多页pdf中保存图像