Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Вызов JS из флешки - нужна помощь (http://www.flasher.ru/forum/showthread.php?t=110378)

Sam Russ 01.04.2008 21:08

Вызов JS из флешки - нужна помощь
 
Есть конструкция типа

Код:

on (release) {
        stri=String(this._name);
        k=stri.charAt(4)+stri.charAt(5);trace("clicked on pic tn "+k);
        getURL("javascript:kw_switch('http://artbrathers.ru/"+k+".JPG',''); return false;");
       

}

которая вызывает на странице следующий скрипт

Код:

<script>
function kw_switch(i,c) {
        d=document;if (d.getElementById){ d.getElementById('kwMain').src=i;
        d.getElementById('kw_caption').innerHTML=unescape(c);}
}
</script>

почему то не работает. Со страницы без вопросов, из флешки не вызывается.
Пробовал и с String(ExternalInterface.call но что то видимо руки не заточены. Елси есть вариант - плз. хелп.
Заранее признателен.

2 __etc - злой ты, ну спросил человек некорректно и всё, надо сразу тему закрыть?

Sam Russ 01.04.2008 22:18

Даже чудесная ссылка на
Код:

call (ExternalInterface.call method)
ругается и говорит что всё устарело и надо писать по другому, блин, ну неужели никто не пользовался?

divinus 01.04.2008 22:37

вариант с getURL не работает возможно из-за того, что html-ка грузится локально (адрес file:///*****.html) надо выложить на сервер, чтобы адрес был (http://*****.html) тогда должно работать, но это уже устаревший способ... лучше читайте про "ExternalInterface" ;)

Sam Russ 01.04.2008 22:41

2divinus - я конечно тупой но не настолько. Выкладываю, не пашет. У тебя нет примера с ExternalInterface? Тот что выложен на Adobe Live Docs не работает (говорит надо поменять определения бла бла бла типа он уже устарел)

Molecula 01.04.2008 23:05

Тут отличный пример - http://livedocs.adobe.com/flash/9.0/...=00001655.html.

У вас получилось вызывать Ява функцию?

Sam Russ 01.04.2008 23:23

2Molecula - просто ради прикола скопируй этот пример во флеш и посмотри аутпут. Я же написал вверху что смотрел его но не заработало. Я и на сайте NoxNoctis был и ещё много где, что то с флешером засада блин, недаром я сюда пару лет не заходил, всё ещё хуже стало, только флейм как всегда на месте. У нас тут 500 гуру но блин нацарапать 3 строки кода ну просто варианта нет (и можно не комментировать - я не собираюсь учиться бла бла бла - я просто раз за 5 лет открыл флеш чтобы друзьям сайт быстро написать - и опять забыть про сайтописание) уже ссылок больше написано чем был бы длиной рабочий кусок кода.
Ладно - всем спасибо. Удачи.

Molecula 01.04.2008 23:49

Вы не поверите - но заработало!
Взял код Хелпа:
Код:

import flash.external.*;
ExternalInterface.call("sayHello", "browser");

Отрендерил, так сказать страницу, тупо открыл блокнотом, вписал поверх ява AC_FL_RunContent:
Код:

<script>
    function sayHello(name) {
        alert(">> Hello " + name + ".");
        return ">> Hi Flash.";
    }
</script>

Запустил Денвер.
Протестил, всё ок.
Будьте внимательней.

Sam Russ 02.04.2008 12:10

Всё. Разобрался. Всем спасибо.


Часовой пояс GMT +4, время: 06:56.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.