Как открыть flash SWF в ThickBox в Drupal при загрузке страницы и закрыть его через x секунд

После продолжительной работы над проблемой программирования у меня начинает появляться узкий кругозор в области кодирования. Это мешает отстраниться и посмотреть на проблему издалека.

Отсюда мой вопрос: я использую сайт Drupal 6. При выборе пункта меню открывается страница, и необходимо воспроизвести файл Flash SWF в ThickBox. Через 8 секунд этот ящик закрывается.

Открытие SWF-файла в толстом окне при нажатии на ссылку не представляет проблемы, так же как и последующее закрытие толстого окна; это базовый javascript. Для этого я использую эти:

document.getElementById("identifyvideo").style.display="none"; var tim = window.setTimeout("hideMessage()", 5000); // скрыть этот слой через 5 секунд

Но открывать толстый ящик при загрузке? Я могу добавить ссылку, по которой пользователь может щелкнуть, но она должна открыться автоматически. Я понял, что PHP должен открываться только на одной конкретной странице. Из руководства Thickbox я научился открывать ссылки на изображения — но не как открывать при загрузке страницы.


person Wouter Haesaerts    schedule 11.12.2009    source источник


Ответы (2)


Drupal использует jQuery, у которого есть событие, которое запускается при загрузке страницы.

$(document).ready(function () {
    // Put code here will be run when page has loaded.
});
person googletorp    schedule 12.12.2009

Да спасибо! Я понял это до того, как вы ответили на мой вопрос, но я был на правильном пути. Я использовал Shadowbox с этим кодом:

<script type="text/javascript"> 
Shadowbox.init({
    language:   "en",
    players:    ["swf"]
});
</script>

<script type="text/javascript"> 
window.onload = function(){ 

Shadowbox.open( document.getElementById('identifyvideo') ); 
setTimeout("Shadowbox.close()",9000);

};
</script>

...где #identifyvideo — это DIV, содержащий SWF-файл. Спасибо за ваш отзыв!

person Wouter Haesaerts    schedule 13.12.2009