通常在渲染画布时将代码包装在
中def clean_book_intro_component(component)
@component ||= {}
@component[component] ||= sanitize @book.intro.send(component), tags: %w(span b i p a), attributes: %w(id class style href)
end
但是,我使用的代码在外部有一个闭包,因此格式为..
$(function() { ....});
我无法使用$修复canvas getContext错误。有任何想法吗?
答案 0 :(得分:0)
问题不在于您使用闭包,或者您需要使用就绪处理程序。
但问题是当你使用jQuery方法并尝试组合核心javascript的getContext方法时会抛出一个指示未定义函数的错误。要解决此问题,您需要这样做:
var $canvas = $('#jCanvas'); //From jQuery object
$canvas[0] //To JavaScript :: [0] is first matched element
.getContext('2d');
现在,这样getContext在javascript元素上使用并且工作正常。
但为了简单起见,我不会将它们包装在jQuery中,只需使用JavaScript:
var canvas = document.getElementById('canvas');
var context = canvas.getContext('2d');