2

我有一个问题,以下代码适用于:IE 10FirefoxSafariMac Chrome,但不适用于Windows Chrome

$(function () {
    var video_dom = document.querySelector('#v');
    var canvas_draw = document.querySelector('#c');

    var draw_interval = null;

    video_dom.addEventListener('play', function () {
        video_dom.width = canvas_draw.width = video_dom.offsetWidth;
        video_dom.height = canvas_draw.height = video_dom.offsetHeight;
        var ctx_draw = canvas_draw.getContext('2d');
        draw_interval = setInterval(function () {
            ctx_draw.drawImage(video_dom, 0, 0, video_dom.width, video_dom.height);
            var dataURL = canvas_draw.toDataURL();
            document.getElementById('canvasImg').src = dataURL;
        }, 3500)

    }, false);
})(); 

我也在控制台中收到此错误,例如:Uncaught TypeError: object is not a function
为什么画布在Mac版本中可以工作,而在Windows版本的Chrome中不行?

4

1 回答 1

1

当您不使用 jQuery 时,我不明白为什么您在函数前面使用美元符号 ($)。

window.onload = function () {
    var video_dom = document.querySelector('#v');
    var canvas_draw = document.querySelector('#c');

    ...

};

应该清除错误。

于 2013-04-07T18:01:53.623 回答