0

首先,这里的 javascript newb 正在做一个小宠物项目,试图在这方面做得更好。我正在构建一个 Image 对象

function Image (id, name, height, width) {
    this.id     = id;
    this.name   = name;
    this.height = height;
    this.width  = width;
}

首要任务是写我能做的 id 和 name。

var image = new Image(
    json.revision_images[i].id, 
    json.revision_images[i].OrgImageName,
    json.revision_images[i].galleryid
);

我的下一步是为对象的每个实例添加高度和宽度,这是我在围绕对象概念时遇到的问题。

我有一个小功能可以获取参考缩略图的自然高度和宽度。

function checkImageDimensions (id) 
{
     var img = $("#" + id);
     naturalDimension = getNatural(img);
}

我该如何分配

this.height = naturalDimension.oHeight;
this.width = naturalDimension.oWidth;

到基于 id 的对象?

4

1 回答 1

1

正如kirugan所说,Image已经是浏览器中的现有功能。最好重命名你的。除此之外:

将您的图像对象存储在地图中,由 ID 键入:

var images = {};
// somewhere
images[json.revision_images[i].id] = new MyImage(
   json.revision_images[i].id, 
   json.revision_images[i].OrgImageName,
   json.revision_images[i].galleryid
);
// and
function checkImageDimensions (id) {
   var naturalDimension = getNatural($("#" + id));
   images[id].width = naturalDimension.width;
   images[id].height = naturalDimension.height;
}
于 2013-01-12T03:12:56.937 回答