javascript - 无法在 JavaScript 中设置 null 的属性 'src'

标签 javascript null runtime-error src

我正在更改一些现有的 javascript 代码,这些代码将 HTML 文档中的图像导出到 Word 文档。新功能将捕获 HTML 内的 Canvas 数据,将其转换为 .png,然后导出,但是当代码到达此部分时,我收到“无法设置 null 的属性‘src’”:

        //Capture all canvas data
        var canvasData = markup.find('canvas');

        var tempImage = new Image();

        ////Array to hold of the images
        var imageArray = Array();
        for (var i = 0; i < canvasData.length; i++) {
            tempImage.src = canvasData[i].toDataURL("image/png");
            imageArray[i] = tempImage;
            tempImage = null;
        }

任何帮助将不胜感激!

最佳答案

正如您所看到的,您正在循环内使 tempImage 无效,在第一次迭代之后,它将被分配一个 null 值,因此在下一次迭代中,您将尝试将 src 设置为 null。这就是您收到此错误的原因。将 var tempImage = new Image(); 放入循环中。

   for (var i = 0; i < canvasData.length; i++) {
       var tempImage = new Image();
        tempImage.src = canvasData[i].toDataURL("image/png");
        imageArray[i] = tempImage;
        tempImage = null;
    }

关于javascript - 无法在 JavaScript 中设置 null 的属性 'src',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31830617/

相关文章:

Java8 可选和 null 检查

javascript - .spread 带有数据重定向

javascript - 使用 Promise 并行运行两个 javascript 函数

java - NullPointerException 和处理它的最佳方法

javascript - 静默的javascript错误

java - 在命令提示符下运行 java 代码时出现问题

javascript - 为什么第二次使用 $state.transitionTo() 会导致 "TypeError: Cannot read property ' $$nextSibling' of null"?

javascript - 在重新加载页面后,在 Angular js 中,使用 $locationProvider.html5Mode(true); 后,服务器上出现错误 404 找不到页面;

php - 从头开始编写像 osCommerce 这样的 PHP 购物车需要多长时间?

c++ - 指针和 "NULL"