Форум 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)
-   -   глюк JavaScript? (http://www.flasher.ru/forum/showthread.php?t=84094)

tandem 23.08.2006 13:29

глюк JavaScript?
 
Помогите пожалуйста!!!
Этот код работает через раз:
Код:

getURL("javascript:window.open('xxx.php','','width=1,height=1,menubar=0,scrollbars=0');  void(0);");
Как быть?:yahoo:

iNils 31.08.2006 11:23

Для начала описать проблему более полно. Где не работает (браузер, локалка/сеть), с чем не работает (версия плеера), ну и тд.

tandem 14.04.2007 17:37

Опытным путем выяснил, что проблема не в Яве.
Ситуация такая: при
Код:

getURL("http://www.siteru/download.php?file=mp3.mp3", "_self");
флешка запрашивает файл download.php, который выдает файл mp3.mp3 на скачку.

Содержимое download.php:
PHP код:

<? 
 $file 
= $_GET['file'];
 
header("Content-Type: application/octet-stream");
 
header("Content-Disposition: attachment; filename=$file");
 
header("Content-Length: ".filesize($file));
 
header("Content-Transfer-Encoding: binary");
 
readfile($file);
?>

Судя по всему проблемка в этом, так как после такого никакой поп-ап по методу
Код:

getURL("javascript: window.open...")
уже не откроется, выходит или ошибка или просто нич не происходит.

Что делается не так? Судя по всему проблема в php файле...
Помогите.

etc 14.04.2007 19:09

http://www.flasher.ru/forum/showthread.php?t=92951

tandem 15.04.2007 12:38

Цитата:

Сообщение от __etc

Так я же гружу файлы через этот download.php с этого же сервера, иногда даже из этой же папки где и сама флешка находится.

Я так понимаю, что для такой ситуации необязательно прописывать allowDomain?

Самое интересное, что через fscommand все работает безотказно, но её я использовать не буду.

Как быть? :boredom:

etc 15.04.2007 19:59

Судя по тексту, вы не очень понимаете, о чем говорите.

tandem 15.04.2007 22:13

Возможно я неправильно описал ситуацию...
Попробую еще раз:
1) все действия происходят на одном URL
2) есть флешка, файл mp3, скрипт download.php (содержание которого приведено выше)
3) во флешке есть кнопка которая вызывает попап окно на страницу с ЭТОГО ЖЕ домена через getURL("javascript: window.open...")
все работает отлично, но...
4) если нажать на другую кнопку, которая ведет по getURL на download.php?file=1.mp3 (файл mp3 находится в одной и тойже директории на сервере, что и флешка и download.php) произойдет предложение пользователю скачать файл MP3.
5) далее если уже нажать на 1-ю кнопку, которая вызывает попап окно, то уже ничего не происходит и окно не вылезает... а в 7 ИЕ вообще говорится о неизвестной ошибке...

Как быть в такой ситуации...
Самое интересное, что если производить вызов попапа через fscommand, то никаких проблем не возикает...
Заранее всем спасибо за ответы

tandem 15.04.2007 22:44

Если кого-то заинтересует эта ситуация, то могу в личку кинуть ссылку на проект, где эта проблема актуальна. :-)

techno 15.04.2007 22:52

А может все дело в кеше?

P.S. не по теме: disignerdisigner - можно звук отдельно подгружать, замучился ждать!

P.P.S. пожеланице: тему не подмывай, а то плюсик дадут.

tandem 15.04.2007 23:00

Цитата:

Сообщение от techno
А может все дело в кеше?

P.S. не по теме: disignerdisigner - можно звук отдельно подгружать, замучился ждать!

P.P.S. пожеланице: тему не подмывай, а то плюсик дадут.

Звук подгружать отдельно не будем - композиция испортится :victory:

про какие плюсики идет речь?

tandem 15.04.2007 23:12

Вот сварганил пример, посмотрите господа знатоки:
http://www.designerdesigner.ru/test/popup/

CorC 16.04.2007 11:00

Хм, это косяк ИЕ, в Опере и ФФ все работает (у меня по крайней мере)

tandem 16.04.2007 11:20

У меня тоже причем и в 6-й и в 7-й версии, я вот ниче понять и не могу...
Обычно ведь наоборот бывает...

tandem 17.04.2007 12:39

Ребят, что никто не знает в чем дело? :quiet:

etc 17.04.2007 12:52

А почему у меня второй раз открывается снова яндекс?
И, видимо, нужно убрать void(0); иkb _self.

з.Ы. Темы у нас не поднимают.

tandem 17.04.2007 13:33

Цитата:

Сообщение от __etc
А почему у меня второй раз открывается снова яндекс?

а в каком браузере Вы смотрите?

Цитата:

Сообщение от __etc
И, видимо, нужно убрать void(0); иkb _self.

Если убрать void(0); - то будет ошибка - посмотрите пример по ссылке указанной выше сного, я его обновил.
Если убрать _self - ничего не изменится...

etc 17.04.2007 13:36

В IE не пашет. Я говорю, что в коде надо попробовать убрать void(0); и _self.

tandem 17.04.2007 13:38

см сообщение выше, дополнил

etc 17.04.2007 14:03

Значит это исключительно баг IE. Нужно попробовать вызывать функцию из JS, открывающую окно и проверять, создано окно или нет.

tandem 17.04.2007 14:10

если вызывать через fscommand, т.е. функцию вызова будет вписана с страницу через JS - никаких проблем не возникает...

Просто помоему не все браузеры во всех своих версиях нормально тянут fscommand, с оперой проблемы были версии в 6,7 - непомню...

Просто неясен один факт: если это баг IE, то почему никто никогда раньше этого не понял? Неужели никто попап окна из флеша не вызывает?

etc 17.04.2007 14:28

А вызвать javascript:myFunction() совесть не позволяет?

tandem 17.04.2007 14:51

Пробовал - без разницы...
Посмотри пример, обновил как ты сказал.

И чего теперь делать? :-)

wvxvw 19.04.2007 02:39

Ну, попробуй
Код:

ExternalInterface.call("myFunction", "arguments");

Kikasso 20.04.2007 02:48

Попробуй имя окна написать, а не пустую строчку ( в window.open()второй параметр )
А по-хорошему, открывашку лучше в html пихать, а из флеша ее вызывать.
_self и void тоже не нужны.

tandem 21.04.2007 11:45

Цитата:

Сообщение от Kikasso
Попробуй имя окна написать, а не пустую строчку ( в window.open()второй параметр )

Попробовал - та же фигня...

Через fscommand, когда функция описана в html, то все работает, но не хочется её использовать.

tandem 21.04.2007 12:07

Цитата:

Сообщение от wvxvw
Ну, попробуй
Код:

ExternalInterface.call("myFunction", "arguments");

Работает, только вот это в 8-ке только, да и этот метод поддерживатся только одними из самых последних версий браузеров.

Но все равно спасибо. :victory:

wvxvw 21.04.2007 18:24

Не проверял, но хелп утверждает, что http://www.adobe.com/cfusion/knowled..._14192#methods вот так оно работает... ну и ессно, в восьмерке, тут уж ничего не поделаешь

Kikasso 21.04.2007 19:13

Еще такой вариант..Вы в <script> language или type не пробовали указывать? И комментами обрамлять, как водится?
Код:

<script type="text/javascript">
<!--
// код
// -->
</script>


tandem 22.04.2007 12:07

Пробовал - без разницы.

etc 22.04.2007 13:38

http://noregret.org/tutor/navigation/


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

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