вызов flash-функции из js

Дед Анвирыч

Новичок
вызов flash-функции из js

Есть стандартные методы, которыми можно запустить/тормознуть ролик, отмотать, увеличить и устновить переменную. А вот вызова произвольной функции я что-то не нашел. Если писать функцию в отдельном фрейме и делать gotoFrame - получается как то очень медленно. Например хочу перед закрытием окна вызвать функцию фо флеше. Устанавливаю переменную, отгоняю ролик на нужный фрейм... Но окно закрывается раньше, чем все это успеет отработать. Тормознуть закрытие окна получается только alert'ом. Но в итоге пользователя это напрягает.

Например:

PHP:
<body onUnload="oul();">
... флешка ...

<script>
function oul(){
	var InternetExplorer = navigator.appName.indexOf("Microsoft") != -1;
	var mc = InternetExplorer ? window.flashka : window.document.flashka;
	mc.SetVariable("variablename", "value");
	mc.GotoFrame(1);
	alert('good bye!!!'); // вот без этого алерта - окно закрывается, не отмотав ролик

}
</script>
</body>
Вопрос - можно ли вызвать функцию, описаню в ролике без перемотки?
 

MiRacLe

просто Чудо
да можно

window.document.getElementById('id_of_your_flash_object').SetVariable('function_name','arguments');

З.Ы. вынеси определение функции в _root - она должна стать доступна без "перемоток"
 

Дед Анвирыч

Новичок
если я вынесу в root, то она отработает при загрузке. Это не то.

SetVariable('function_name','arguments'); - уверен? вот переменную так передать - да... а вот функцию... Ща попробую.
 
Сверху