PDA

Просмотр полной версии : Запустить js-функцию из swf


Stvol
21.08.2006, 11:39
При попытке запуска через fscommand браузер отправляет на сайт макромедиа...
При запуске из getUrl - работает только в мазиле...

Пожалуйста, подскажите нормальный, доступный способ, которым можно запустить JavaScript функцию из флешки.

Stvol
21.08.2006, 13:45
или, если никто не знает как это сделать, может быть есть способ начать прогружать оставшуюся часть html кода только после того, как проиграется флешка

Ставить таймер не удобно, т.к. при первой запуске страници - флешка еще не загружена - и поэтому прогрузка текста будет происходить раньше чем надо.

ffffff
21.08.2006, 13:53
getURL работает везде.

покопайся c allowScriptAccess и Local playback security

wvxvw
21.08.2006, 13:55
getURL(javascript:jsFunction)
Пробуй разные варианты синтаксиса, по-идее должно работать

etc
21.08.2006, 14:56
http://noregret.org/tutor/navigation/

Stvol
21.08.2006, 15:14
Если не сложно - сделайте маленький пример.
Кнопка - клик по ней и на странице выдается скриптовый алерт...

Я уже все перепробовал... не пойму в настройках чего нелады

etc
21.08.2006, 15:19
Много букв по ссылке? Не тратьте чужое время, тратьте своё, благо по ссылке всё прекрасно описано.

Morbah
21.08.2006, 16:21
Я думаю, что если кто-то действительно захочет помочь, он поможет.
А статья супер. Все подробно описано.
3 способа - а функция на запускается.
особенно интересен вот этот:
// ActionScript:
import flash.external.ExternalInterface;
var from_js = ExternalInterface.call("test", 1, "АБВ", {x:1, y:2});
// JavaScript:
function test (num, str, obj) {
alert(typeof(num) + " : " + num);
alert(typeof(str) + " : " + str);
alert(typeof(obj) + " : " + obj.x+","+obj.y);
return "hey ho!";
}

KUZEN
21.08.2006, 18:01
на примере попапа (http://www.blog.kuzen.ru/?p=135)

Stvol
22.08.2006, 12:15
KUZEN - спасибо за ссылку!!!

mail = "kuzen@kuzen.ru";
copy = "Какая нафиг копия )))";
subject = "Я с форума прошу помощи )))";
body = "Здарова KUZEN.";
btn.onPress = function() {
getURL("mailto:"+mail+"?CC="+copy+"&subject="+subject+"&body="+body);
}; - такое срабатывает

btn.onPress = function() {
getURL('javascript: void window.open("http://ya.ru","_blank","HEIGHT=100,WIDTH=500,scrollbars=no")');
}; - такое нет :(

Окна не открываются, не закрываются...

iNils
22.08.2006, 12:31
Morbah и Stvol, это хоть и раздел для начинающих, но это не значит, что можно игнорировать теги

Stvol
22.08.2006, 13:12
Разостал эту страничку знакомым - действительно у всех работает, кроме меня...
Причем ни в одном браузере не работало.

Буду искать проблему у себя.

Спасибо!

Stvol
22.08.2006, 13:33
Я разобрался. Только на моей компе проблемы с браузерами...

Спасибо за помощь!

_bkt
22.08.2006, 20:31
2 Stvol
Сам мучался с этой проблемой 2 дня.

2 Morbah
ExternalInterface.call - интересно, но работает только с 8-ки
_ect так отвечает потому что его уже зае?*;№ отвечать одно и тоже по много-много раз, нам ламмерам.

2 Stvol
Решение твоей проблемы, основываясь на решении моей.

Моя проблема была:
Как обновить страницу из флеша, после того, как от послал пересменную в файлик ПХП, а тот обновил данные и отобразил их на странице.
Проблема, что ПХП всё делал правильно, но увидеть изменения можно было после рефреша, т.е. Ф5 на клаве.

Решение.
Код кнопки во флеше:

but.onPress=function(){
getURL('javascript:mf()')
}

Что такое mf() ?
Это функция, которую я написал в теле ХТМЛ.
Ещё добавлю, что сам флеш у меня подключался через include()
Я боялся, что надо будет там яваскрипт прописывать, но ничего, нормально всё.
Теперь сам яваскрипт, который ты должен прописать в ХТМЛ странице:
<script>
function mf(){
window.location.reload ()
}
</script>

Вот оно где зарыто родненькое mf() :)
Всё.
Вместо window.location.reload () пиши шо хош.

iNils
22.08.2006, 22:49
_bkt, мой пост №11 относится ко всем. Буду плюсы за это ставить.

_bkt
23.08.2006, 01:18
iNils,
Извини, не знал как правильно оформлять, я уже спрашивал про это в одном топике,надеюсь ответили, а то я смотрю ты редактируешь и редактируешь, у меня аж кошки на душе скребут из-за такого.