когда я создаю экземпляр объекта ( simplegallery ) в обычной функции, подобной этой:
function setGallery(imgs){
var galleryArray = new Array();
for(var i=0; i<imgs.length; i++){
galleryArray.push([imgs[i].imgpath + imgs[i].imghash + imgs[i].thumb + '.' + imgs[i].ext, "", "", ""]);
}
var mygallery=new simpleGallery({
navpanelheight: 40,
wrapperid: "fbImg", //ID of main gallery container,
dimensions: [80, 60], //width/height of gallery in pixels. Should reflect dimensions of the images exactly
imagearray: galleryArray,
autoplay: [false, 2500, 2], //[auto_play_boolean, delay_btw_slide_millisec, cycles_before_stopping_int]
persist: false, //remember last viewed slide and recall within same session?
fadeduration: 500, //transition duration (milliseconds)
oninit:function(){ //event that fires when gallery has initialized/ ready to run
//Keyword "this": references current gallery instance (ie: try this.navigate("play/pause"))
},
onslide:function(curslide, i){ //event that fires after each slide is shown
//Keyword "this": references current gallery instance
//curslide: returns DOM reference to current slide's DIV (ie: try alert(curslide.innerHTML)
//i: integer reflecting current image within collection being shown (0=1st image, 1=2nd etc)
}
});
}
Насколько я понимаю, созданный объект "mygallery" является экземпляром "simpleGallery". Поскольку объект "mygallery" объявлен в функции setGallery, это локальный объект, который будет потерян после завершения функции. Но simpleGallery связывает события, которые взаимодействуют с настройками, которые являются свойствами simpleGallery ... почему эти свойства остаются живыми, когда эти события запускаются?
Однако, как долго живет такой экземпляр и почему?
- Вопрос: Как я могу получить доступ к свойству этого экземпляра из другой функции, кроме setGallery?
Например, когда я хочу получить значение mygallery.setting.imagearray.length ...
Спасибо, что помогли мне понять! : -)