我的函数触发一个表单的提交并调用另外两个函数,但我不希望页面刷新。
$('form').submit(function(){
functionA()
functionB();
return false;
});
function functionB(){
var image = new Image();
var canvas = document.getElementById("flag");
var context = canvas.getContext("2d");
image = context.getImageData();
alert('remove');
}
当我只调用functionA并且当functionB为空时,这工作正常,所以我认为问题必须在functionB中?
EDIT。
我的画布在单独的HTML文件中定义,如下所示:
<canvas id="flag"></canvas>
控制台显示Uncaught Error:NotSupportedError:DOM Exception 9
答案 0 :(得分:1)
getImageData
是您使用context
检索的getContext()
对象上的一种方法。 canvas元素没有直接的方法。
var canvas = document.getElementById('flag');
var context = canvas.getContext('2d');
image = context.getImageData();
我还没有看到getImageData
在没有任何参数的情况下被使用,并且无法找到它被证明支持这一点。通常,您传递4个指定x, y, width, height
的参数;见https://developer.mozilla.org/en-US/docs/HTML/Canvas/Pixel_manipulation_with_canvas