jQuery динамическое создание холста, $ ctx.getContext не является функцией - PullRequest
30 голосов
/ 13 июля 2010

Когда я пытаюсь выполнить это в jQuery, я получаю $ctx.getContext is not a function в firebug.

var $ctx = $( '<canvas />', {width:'100', height:'100'} )
$widget.append($ctx)                                     
$ctx.getContext('2d')                                    

Есть идеи, почему я получаю эту ошибку?Как мне динамически создать и инициализировать элемент canvas?

Ответы [ 3 ]

65 голосов
/ 13 июля 2010

$ctx - это объект jQuery. используйте $ctx[0].getContext('2d'), чтобы получить контекст

1 голос
/ 14 июля 2010

Если вы используете excanvas, вам нужно использовать следующее, чтобы оно работало в IE.

var canvas = $ctx[0];

if (canvas.getContext == undefined) {
    return G_vmlCanvasManager.initElement(canvas).getContext("2d"); 
}

return canvas.getContext('2d')
0 голосов
/ 24 октября 2013

первым делом, вам нужно проверить, существует ли следующая строка и находится ли текст HTML-документа.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML Strict//EN">

эта строка в качестве условия выполнения политики рендеринга в браузере.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...