Javascript-форум (https://javascript.ru/forum/)
-   Flash (https://javascript.ru/forum/flash-actionscript-program/)
-   -   Что я делаю не так? (https://javascript.ru/forum/flash-actionscript-program/43887-chto-ya-delayu-ne-tak.html)

incrowd 25.12.2013 10:08

movie.TGotoLable() is undefined
 
Есть скрипт, который ранее работал (в ИЕ и хроме точно работал).
Собственно, я подключаю объект, записав его в переменную (тут, вроде-бы, все ок).
<SCRIPT language=JavaScript>
       flash_object_text_= "<object align=\"middle\" hspace=\"0\" class=\"movie\"" +
       "classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\"" +
       "codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0\"" +
       "id=\"lesson_movie\" width=\"800\" height=\"600\" align=\"middle\">"+
        "<param name=\"allowScriptAccess\" value=\"sameDomain\" />" + 
        "<param name=\"movie\" value=\"Registration.swf\"/>" +
        "<param name=\"quality\" value=\"high\"/>" +
        "<param name=\"bgcolor\" value=\"#ffffff\"/>" +
        "<embed src=\"Registration.swf\" quality=\"high\" bgcolor=\"#ffffff\" width=\"800\" height=\"600\" swLiveConnect=\"true\" id=\"lesson_movie\" name=\"lesson_movie\" align=\"middle\" allowScriptAccess=\"sameDomain\" type=\"application/x-shockwave-flash\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\" />" +
        "</object>";
    </SCRIPT>

Но, когда вызываю функцию (movie.TGotoLable), что должна запустить определенный эпизод, получаю, что она undefined.
понятия не имею, куда копать.

danik.js 25.12.2013 10:58

Цитата:

Сообщение от incrowd
Собственно, я подключаю объект, записав его в переменную (тут, вроде-бы, все ок).

Чувак, вынужден тебя расстроить: то что ты делаешь - это всего лишь запись какой-то_там строки в переменную flash_object_text.
Это абсолютно ничего не дает ни тебе, ни браузеру. Если только ты не используешь эту строку как-то ниже, например для скармливания ее HTML-парсеру через innerHTML или document.write()

incrowd 25.12.2013 23:41

Цитата:

Сообщение от danik.js (Сообщение 289144)
Это абсолютно ничего не дает ни тебе, ни браузеру. Если только ты не используешь эту строку как-то ниже, например для скармливания ее HTML-парсеру через innerHTML или document.write()

По нажатию на ссыль, скрывается текст ссылки, а после неё вставляется запись из переменной. При помощи
document.getElementById('flash_movie').insertAdjacentHTML('afterBegin', flash_object_text_);


почитал мост джава-флеш, не помогло.

при клике на определенный дивник, вызывается функция, что меняет в нем имя класса и вызывает функцию movie.TGotoLabel(). В результате я получаю
Код:

Object #<HTMLObjectElement> has no method 'TGotoLabel'
З.Ы.:
movie = document.getElementById('lesson_movie');


З.Ы.Ы.: когда данный скрипт делали (его делал не я), он работал лишь по ИЕ6 и 7. и, при клике по флешке, вызывалась функция из джаваскрипта (сейчас этого не происходит). Быть может, дело вовсе не в скрипте, а во флехе?

incrowd 26.12.2013 00:27

решение оказалось довольно-таки простым. вместо
movie = document.getElementById('lesson_movie');
нужно было писать
movie = document.lesson_movie;


Часовой пояс GMT +3, время: 12:01.