【发布时间】:2014-06-03 22:50:40
【问题描述】:
我正在尝试将 jquery 导入到最初在构造函数中工作的原型类中。
我在调用 resizeCanvas 事件时失去了我的 jquery 范围。它说 width() 和 height() 函数是未定义的。
有没有办法让我不会丢失 jquery 变量。
define(['jquery'], function($) {
function Canvas() {
this.canvas = document.getElementById('canvas');
this.context = this.canvas.getContext('2d');
this.rowbuild = $('#rowbuild');
}
Canvas.prototype.addResizeListener = function() {
window.addEventListener('resize', this.resizeCanvas, false);
};
Canvas.prototype.resizeCanvas = function() {
this.canvas.width = this.rowbuild.width();
this.canvas.height = this.rowbuild.height();
};
return Canvas;
});
【问题讨论】:
-
我发现了我需要传递jquery的上下文的问题。 $(window).on('resize', this.resizeCanvas);
标签: javascript jquery inheritance requirejs