我有一个对象image
我可以做类似的事情image.top
它会返回一个值,或者我可以这样做image.myPoints[0].left
它会返回一个值。我基本上有一个为我存储值的图像对象。我希望能够放置多个image
数组中的对象,所以我可以做这样的事情:
$("#toPinpoint").mapImage({
useAjax: false,
pinpoints: [ { "top": 50,
"left": 280,
"width": 200,
"height": 200},
{ "top": 0,
"left": 0,
"width": 300,
"height": 74 } ]
});
我使用这个函数来创建对象,将精确点添加到对象上。当调用 mapImage 函数时,会发生以下情况:
$.fn.mapImage = function(options){
//Set user input options and defaults
var optionConfig = $.extend({}, $.fn.mapImage.defaults, options);
image=this;
this.image = this;
// Assign defaults
this.previewMode = optionConfig.previewMode;
this.pinpoints = optionConfig.pinpoints;
image.pinpoints = optionConfig.pinpoints;
image.pinpointCount = 0;
image.selected = 0;
...}
这设置了图像属性,现在我想用我的应用程序修改属性,然后保存这些image
对象放入数组中。
我的问题是数组正在加载图像对象,但它似乎用我刚刚推入的对象填充了整个数组,因此它不会保存我的旧图像对象。例如,如果我这样做myArray[0].myPoints[0].left
,假设它返回 30,然后我推送另一个 myPoints[0].left 等于 20 的图像对象,数组中的第一个图像对象变成 20,而不是将其保存为 30。如果有一个好方法解决这个问题将不胜感激。谢谢你!