У меня возникают проблемы с реализацией метода уничтожения в моем всплывающем окне. Все работает хорошо, приведенный ниже код работает для одного всплывающего окна, которое меняет свое содержимое в зависимости от того, на что нажимали. Но я замечаю, что мой контент (медиа) по-прежнему воспроизводится при скрытии всплывающего окна. Я хотел бы полностью уничтожить его и создать заново по клику. На форумах я не нашел ничего, что помогло бы мне достичь этого, поэтому я думаю, что это поможет и другим: -)
Меня смущает пара вещей, так как на маркерах уже есть прослушиватель щелчков, который запускает всплывающее окно, куда мне поместить код уничтожения? Должен ли я объявить ее как отдельную функцию за пределами всплывающего окна, а затем как-нибудь вызвать ее перед собой?
function addMarker(country)
{
if (true)
{
var image = new google.maps.MarkerImage(country.image48Path);
var marker = new google.maps.Marker({
map: map.map,
title: country.title,
position: country.position,
//draggable: true,
icon:image
});
var goToCountryWrapper = function (button, event)
{
goToCountry(country, this.popup);
};
google.maps.event.addListener(marker, 'click', function()
{
if (!this.popup)
{ ---> Should I be placing destroy code here?
this.popup = new Ext.Panel(
{
floating: true,
modal: true,
centered: true,
width: 800,
height: 600,
styleHtmlContent: true,
scroll: 'vertical',
items:[(new countryOverlay(country)).overlayPanel,
{
xtype:'button',
margin: 20,
ui:'action-round',
text:'Click here to view more promo videos',
handler:goToCountryWrapper,
scope : this
},],
layout: {
type: 'auto',
padding: '55',
align: 'left'
},
dockedItems: [{
dock: 'top',
xtype: 'toolbar',
ui: 'light',
title: country.title
}],
---> Should I be placing a listener here for beforehide, destroying here?
});
};
this.popup.show('pop');
});
}
};
---> Should I be placing the destroy code after, as a seperate function?
Спасибо
Digeridoopoo