我正在尝试在 JS 中编写一个对象。每当浏览器窗口调整大小时,该对象都需要重新计算一些值。我试图通过将函数绑定到事件(“resize”)来做到这一点。我正在使用 JQuery 框架。
我已经尝试了几种方法,但都没有奏效,所以一个例子没有多大用处。这个想法是这样的:
function grid_constructor(options) {
this.numOfdivisions = $(target).width() / division_size;
$(this).on ("resize", function () {
this.numOfdivisions = $(target).width() / division_size;
})
}
到目前为止,我认为问题在于我应该将事件绑定到文档,而不是对象,但是当我尝试像这样将事件绑定到文档时$(window).resize (this.recalculate_divisions())
,它会立即触发,不再触发(所以我想我'我做错了)。
由于这个函数是对象固有的,我不能通过名称来引用实例化的对象(我不知道,在编写代码时,它将具有哪个名称),所以我不能简单地做一个$(document).ready(function(){$(window).resize($(object_name).function))
.
只是为了澄清。我不想创建自定义事件,我需要我的对象在构建后的任何时间对事件做出反应。