html2canvas错误:未捕获TypeError:undefined不是函数

时间:2014-08-06 11:43:14

标签: html2canvas

我已使用以下代码在我的页面中生成网格的屏幕截图。下面代码中的'gridBody'是一个DOM对象。

html2canvas(gridBody ,{
                   onrendered:function(canvas){
                      var img = canvas.toDataURL();
                      window.open(img);
                   }
                });

但是它给出了一个错误:

未捕获的TypeError:undefined不是函数(html2canvas.js:2191) _html2canvas.Preload(html2canvas.js:2191) (匿名函数)

html2canvas.js文件中的第2191行:

domImages = element.getElementsByTagName('img'), // Fetch images of the present element only

当我给'document.body'而不是'gridBody'时,这非常好。

你能帮我解决一下,为什么会出现错误?

注意:gridBody DOM以

开头和结尾
<div>

标记。我可以分享它,但是这个空间不允许在这里粘贴整个DOM,我也没有看到任何附加文件的方法。

1 个答案:

答案 0 :(得分:3)

我遇到了这个问题,发现这是由于传入html2canvas的选择器为空。这导致'元素'不是元素。