Показать сообщение отдельно
Старый 07.01.2008, 17:45
ToXICus вне форума Посмотреть профиль Отправить личное сообщение для ToXICus Посетить домашнюю страницу ToXICus Найти все сообщения от ToXICus
  № 1  
Ответить с цитированием
ToXICus
 
Аватар для ToXICus

Регистрация: May 2006
Адрес: налево от Лондона
Сообщений: 447
Отправить сообщение для ToXICus с помощью ICQ
По умолчанию JavaScript, External Interface and AS 3.0

Всем привет!
Нашел пару исходников (с флеш риппера) про применение External Interface с ява скрипт на екшен скрипт 2.0. Попытался перевести на Action Script 3.0, но ничего не получилось, тоесть сам флеш ошибку не находит, а ява скрипт ругаеться.
Вариант на AS 2.0 самой флешки:
Код:
import flash.external.*;
btn.onPress = function() {
    greeting = String(ExternalInterface.call("sayHello", "browser"));
}
Содержимое HTML страницы:
Код:
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,14,0">
   <param name="movie" value="Untitled-1.swf">
   <param name="quality" value="high">
   <embed src="Untitled-1.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash"></embed>
</object>


<script>
    function sayHello(name) {
        alert(name);
    }
</script>
Пробовал заменить в самом swf файле вроде етого (переправив структуру события
Код:
import flash.external.*;
import flash.events.MouseEvents;
btn.addEventListener(MouseEvent.MOUSE_DOWN, ms_p);
function ms_p(Event:MouseEvent):void {
 greeting = String(ExternalInterface.call("sayHello", "browser"));
}
Но после при нажатии кнопы HTML завопил что тут что то не то передано и замолчал.
Подскажите, что нужно сделать, чтобы переделать вышеуказаный код AS2.0 на AS3.0, а то вроде бы все правильно и класс не изменился.
__________________
Чтоб понять, что ничего не знаешь - учись.