Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Не определяется текущая страница (http://www.flasher.ru/forum/showthread.php?t=146135)

OlegEF 29.10.2010 18:46

Не определяется текущая страница
 
Ролик расположен в корневой директории сайта т.е. site.com/rolik.swf
Страниц, где он выводится много, у каждой свой путь типа:
site.com\catalog1\catalog2\current.html

Пытаюсь получить url текущей страницы т.е. например:
site.com\catalog1\catalog2\current.html

Но trace(_root._url) выводит site.com/rolik.swf

Если возможность доступа к истории браузера или DOM?

Hidest 29.10.2010 18:47

Посредством ExternalInterface дергайте JavaScript.

OlegEF 29.10.2010 19:11

Какой код JS использовать?

А средствами самого flash возможно это?

Хотелось бы кроссбраузерное решение а JS ненадежен в этом плане

cleptoman 29.10.2010 19:33

это чем JS некроссбраузерный?
другое дело - он может быть недоступен.
флэшем никак

КорДум 29.10.2010 19:40

Код AS3:

trace(_root._url)

AS1/2?

OlegEF 29.10.2010 19:41

Ок, может тогда подскажете как дернуть JS из флеша?

Нашел вот решение для AS2
Код AS1/AS2:

var myVar:String = "";
getURL("javascript:myFlaFileName.SetVariable('myVar', document.location)");

А как оно в AS3 будет выглядеть?

Добавлено через 1 минуту
Цитата:

Сообщение от КорДум (Сообщение 946441)
Код AS3:

trace(_root._url)

AS1/2?

CS3, Flash 9, AS3

cleptoman 29.10.2010 19:52

кордум, это урд флэшки , а не страницы

trace(ExternalInterface.call("function(){return document.location.toString()}"));

OlegEF 29.10.2010 20:01

Цитата:

Сообщение от cleptoman (Сообщение 946446)
кордум, это урд флэшки , а не страницы

trace(ExternalInterface.call("function(){return document.location.toString()}"));

Спасибо, это работает, но что делать, если JS отключен в браузере?

leofit 29.10.2010 20:04

Передавайте во флешварсах тогда

OlegEF 29.10.2010 20:09

Цитата:

Сообщение от leofit (Сообщение 946452)
Передавайте во флешварсах тогда

Да, наверное, так и придется сделать.


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

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