Просмотр полной версии : Переход по ссылке-переменной
3d_minder
06.10.2005, 02:32
Подскажите пожалуйста как быть:
Имеется button, который предназначен для перехода по ссылке:
on (release) {
getURL(myWebSite,"_blank");
}
,но есть ещё ряд button'ов которые меняют эти ссылки:
on (release) {
var myWebSite = "http://...";
}
Как правильно организовать их работу?
В каком месте описывать переменную и присваивать ей адрес?
Прописываешь в первом кадре рута, то есть таймлайна, переменную, ну например mywebsite="http://...". Затем на кнопке для перехода по ссылке пишешь:
on (release) {
getURL(_root.mywebsite,"_blank");
}
а на остальных кнопках
on (release) {
_root.mywebsite = "http://...";
}
Ошибка была в том, что переменная, которую ты использовал myWebSite работала только в кнопке, если к переменным нужно будет обращаться из других мест (а не только из этой кнопки), то лучше использовать _root или прописывать полный путь к переменной. А ты с помощью var создавал новые переменные.
Нужно описывать переменную в главной временной линейке, и прописывать к ней путь, начиная с _root, тогда никаких проблем не будет.
3d_minder
09.10.2005, 00:47
Спасибо, всё это у меня работает на localhost.
Почему на сервере это не работает? В поле текста пишется undefined. Пробовал и пути менять и вообще всё в корень вытащил и swf и текстовики, всё равно не воспринимает.... В чём у меня может быть проблема?
А флешка у тебя первая случаем в кэше не осталась?
3d_minder
09.10.2005, 23:11
А флешка у тебя первая случаем в кэше не осталась?
Нет, кэш постоянно очищаю... к тому же пробую в разных браузерах.
Я ещё импортирую текст из файлов и картинки и тут проблема посерьёзней. Они не отображаются, а если и отображается в 1-м браузере, то во втором обязательно нет.
Вообще не понятно, почему в IE что-то работает, а в Oper'е нет и наоборот, хотя при проверке отдельно во флэш-плеере всё нормально.
Я даже пути все убрал, т.е. все файлы находятся в одном каталоге, т.к. именно с этим была не разбериха у браузеров, один работал корректно, а второй искал файлы в корне.
Это код в первом кадре:
_root.createTextField(field,1,350,23,220,20);
name.text = "Текст по умолчанию";
myData = new LoadVars();
myData.load("data.txt");
myData.onLoad = function () {
if (myData.result == "okay") {
description.htmlText = myData.entries;
} else {
description.htmlText = myData.errorMsg;
}
var myWebSite = "";
}
А вот код одного из буттонов:
on (press) {
loadMovie("image.jpg", "moviebox");
myData.load("data.txt");
description.htmlText = myData.entries;
name.text = "Заголовок";
_root.myWebSite = "http://***.net/link.html";
}
Может сам сервер некорректно обрабатывать флэшки или это от него не зависит? Сайт у меня локальный, т.е. хостинг от местного провайдера.
Дай исходник и текст который грузишь.
3d_minder
09.10.2005, 23:45
Лежит вот здесь (***********/562854)
Флешка вроде верно сделана.
Дай тогда ссылку на сервер.
3d_minder
10.10.2005, 00:43
В этом то и дело! Сервер у меня локальный, т.е. недоступный извне, поэтому никак. А может быть дело в нём, может версию 7.0 флэш-плеера не держит?!
Если разместить в другом месте будет работать?
У меня была интересней ситуация:
Чтобы послностью не загружать сайт я сделал шапку в которой есть movieclip. В этот мувик я загружаю готовые swf соотв. каждому из разделов, но вот этот, что в исходнике, никак не хотел грузиться, было пустое место.
Я думал имя не так или путь, но попробовал совсем другую флэшку, переименовал в тоже имя и кинул - всё сработало, а эта никак, пока я её полностью не скопировал в исходнике и не вставил в новый проект.
Может использовать плеер более ранней версии? Может это изменить ситуацию?
Я пробовал в экспорте указывать 5.0 или 6.0, но у меня ошибки выдаёт, мол не поддерживает ряд команд. Можно ли мне подстроить этот исходник, чтобы он работал в версии 5.0?
Серверу пофиг какая версия флеша.
3d minder смотри и разбирайся со своим хостингом закачал на два разных хоста (windows2000server: http://3-plan.ru/flash, и freebsd: http://sterik.ru/flash) везде все работает посмотри попробуй
3d_minder
10.10.2005, 02:18
добился чтобы флэшка отдельно по прямой ссылке нормально работала.
А вот если она подгружается уже в качестве мувика работает некорректно. Как быть?
Что имеем:
index.swf в котором есть movieclip в который загружаем например dvd.swf, который в свою очередь должен брать картинки и текст извне.
однако он вовсе не загружается - пустое место, хотя отдельно работает. (?)
Загружается только в том случае если убрать код в первом кадре, т.е. не брать текст извне.
2Sterik: Почему на одном хостинге строки текста идут через одну, а на другом плотно? С этим тоже никак не разберусь.
это связано с различной разметкой абзацев в unix и windows системах поставь в коце каждой стоки <br> и получишь везде одинаковый текст я сечас в файле valient исправил и разметка везде одинаковая получилась
используй html теги <br> - перевод строки
<p> </p> - абзац
3d_minder
10.10.2005, 23:42
Огромное всем спасибо за подсказки, на данном этапе всё получилось!
И раз уж насел я на вас, разрешите ещё пару вопросов :) :
Список буттонов с сылками значительно увеличился, как мне теперь их пристроить в прокручиваемый список? Прилеплять скроллбар к тексту я умею, но вот с буттонами не сталкивался...
sxstudio
11.10.2005, 00:14
Вообще не понятно, почему в IE что-то работает, а в Oper'е нет
Опера - это не браузер - забудь про него... :)
3d_minder
11.10.2005, 00:23
Опера - это не браузер - забудь про него... :)
о вкусах не спорят, однако нормальный сайт должен правильно работать хотя бы во всех брэндовых браузерах, я же не говорю про кустарные клоны.
попробцуй использовать не кнопки а html текст с сылками на функцию
тогда ты сможешь сам генерить количество ссылок
пример: <a href=\"asfunction:name_function,argument\">текст кнопки</a>
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.