![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Здравствуйте.
![]() Ребят, нужна помощь. Ситуация такая: Я делаю сайт-визитку. На главной сцене домашней странички есть блок "горячих" новостей, под каждой новостью есть кнопка "Подробнее", при щелчке на ней появляется popup окошко, в него подгружается текст из внешнего txt файлика. Этот текст у меня скроллится. (посмотреть можно тут: http://www.mjon-line.com/artem/index.html, на дизайн внимание не обращайте, красоту пока особо не наводила) Но проблема вот в чем: Сейчас подгрузка текста происхот прям в мувике с динамическим текстом так: myData = new LoadVars();
myData.onLoad = function(){
date1.text = this.date1;
}
myData.load("news.txt");
stop();
Структура такая : на главной сцене кнопки "Подробнее", в библиотеке есть мувик с попап окном popup_mc, в нем мувик с контентом content_mc и в нем динамическое поле date1. Еще раз вопрос: Как заставить зрузиться разную инфу при нажатии разных кнопок с главной сцены, не создавая при этом новых клипов и кадров, в динамическое текстовое поле? В архивчике мой исходник, посмотрите, пожалуйста, если не трудно http://www.mjon-line.com/artem/artem.rarИзвиняюсь, если непонятно объяснила, если что-то не ясно, спрашивайте, я с радостью отвечу. Просто я уже измучила Google и скорее всего не могу найти ответ на свой вопрос, по-скольку делаю кривой запрос. Вся надежда на Вас. |
|
|||||
|
Регистрация: Jan 2008
Адрес: Minsk Belarus
Сообщений: 107
|
myData = new LoadVars();
myData.onLoad = function() {
date1.text = this.date1;
};
myData.load("news.txt");
//Допустим, есть пара кнопок: today, about…
//Каждой кнопке соответствует свой текстовой файлик :today.txt, about.txt…
//Итак:
today.OnRelease = function() {
myData.load("today.txt");
};
about.OnRelease = function() {
myData.load("today.txt");
};
stop();
//Вот и все… :)
|
|
|||||
|
Пасибо большое, о втором текстовике, я что-то не подумала сейчас попробую сделать, как вы сказали.
все работает но я вот подумала, что через некоторе время таких новостей будет очень много... не делать же сотни текстовых файликов. А можно как-то сделать так, чтоб число текстовиков, мувиков и кадров не возрастало. Еще учесть, что мувик с динамическим полем не на гланой сцене находится. У меня знания не хватает к сожалению сделать это самой. Вот если можно былоб в кнопке написать код, типа "при нажатии на кнопку загрузить в переменную клипа popup_mc клипа content_mc динамического поля date1 содержимое нужной переменной внешнего файла + код аттачМуви(popup_mc)". И такой код к каждой кнопке, только с разными значениями переменной содержимого текстового файла. Таким образом у меня получился бы только 1 текстовик и только небольшие кусочки кода на будущих кнопочках. Такое реально сделать? Хотябы чисто теоретически? Если да, то подскажите, как реализовать на практике Разобралась! Если вдруг у кого-то случится подобная ситуация, покажу как сделала я: на кнопках "Подробнее" на главной сцене я только писала следующий код: on (press) {
this.attachMovie("popup_mc", "window", 0);
window._x = 385;
window._y = 500;
}
on (release) {
loadText = new LoadVars();
loadText.load("news.txt");
loadText.onLoad = function(success) {
if (success) {
_root.window.text_mc.date1.text = true;
_root.window.text_mc.date1.text = this.date1;
}_
};
}
Только появился другой вопрос...как можно дать зависимость длины динамического поля от числа загруженных в него строк (чтоб автоматом менялось и не было при скроллинге в конце текста большого колличества пустого места)заговорила стихами, учитывая, что я скролл прописыала опираясь на точные координаты по оси у. text_mc.setMask(mask_popup_mc)
var scrollUpper:Number = -116;
var scrollLower:Number = 113;
var textLower:Number = -116;
var textUpper:Number = -376;
var scrollRange:Number = scrollLower - scrollUpper;
var textRange:Number = textLower - textUpper;
function scroll(){
var moved:Number = scroller_mc._y - scrollUpper;
var petMoved:Number = moved/scrollRange;
var textMove:Number = petMoved*textRange;
text_mc._y = textLower - textMove;
}
scroller_mc.onPress = function(){
this.startDrag(false,this._x,scrollUpper,this._x,scrollLower);
this.onMouseMove = scroll;
}
scroller_mc.onRelease = scroller_mc.onReleaseOutside = function(){
this.stopDrag();
this.onMouseMove = null;
}
mouseListener = new Object();
mouseListener.onMouseWheel = function(delta) {
text_mc._y += delta*3;
scroller_mc._y -= delta*3;
if(text_mc._y<-376){
text_mc._y = textUpper;}
if(text_mc._y>-116){
text_mc._y= textLower;}
if(scroller_mc._y>113){
scroller_mc._y = scrollLower;}
if(scroller_mc._y<-116){
scroller_mc._y = scrollUpper;}
}
Mouse.addListener(mouseListener);
Последний раз редактировалось iNils; 03.11.2008 в 15:13. |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Честно говоря, я бы сделал все по-другому((((
Во-первых, использовал бы xml вместо текста и loadVars. Да, понимаю что с этим придется разбираться... Но оно того стоит. В Вашем же варианте все можно было сделать проще - текстовик с блоками новостей загрузить ОДИН(!) раз, считать блоки текста в массив и обращаться к ним при нажатии на кнопки. Что касается "жесткого" скроллера - это, конечно, не порядок. Посмотрите темки, если время разбираться еще есть) Если нет - обязательно посмотрите потом, скроллер такая штука что в каждом сайте используется, надо научиться их делать. Удачи! скроллер с исходниками: http://flasher.ru/forum/showthread.php?t=111891 объяснение формулы)) : http://www.flasher.ru/forum/showpost...48&postcount=6
__________________
Reality.getBounds(this); |
|
|||||
|
Wolsh, дык я не спорю, что xml рулит
Но есть оч весское объяснение, почему я использую txt, Я - НУБ =))))))Честно говоря, у меня огромное желание всему научиться, поэтому с удовольствием изучу и впоследствии использую исходники, которые вы мне указали. Просто у меня грядет создание галереи и там-то вот я не знаю, как без xml оботись. Ибо не хочу грузить фотки и превьюшки в флэш. Хочу просто в xml указать пути, а из флеша обратиться к этому файлику и грузить картинки в пустой мувик с програмным уменьшением размера (для превью).Просто это первый мой сайт во флэш. Но в данный момент у меня огромные проблемы с загрузкой xml...я мало разобралась, да и спросить не у кого, только здесь на форуме. Если б я жила у себя на Родине, то давно пошла на курсы! В любом случае спасибо! Если появятся проблемы и затруднения с Вашео разрешения я тут еще напишу ![]() Добавлено через 2 часа 20 минут А меня заинтересовало, почему один раз грузить все в массив?какое преимущество это даст? Последний раз редактировалось Christina; 03.11.2008 в 15:45. |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Довольно странно загружать весь ТХТ каждый раз, когда нужна одна строчная переменная из него. Уже загруженная! У некоторых людей отключен кэш в браузере, и Ваш файл действительно будет грузиться. В конце концов, это просто нелогично, неоптимально и не по-взрослому)) Загрузили один раз и пользуйтесь. Массив - да просто для удобства. Можно и по-другому - каждый раз обращаться к объекту loadVars, дергая из него нужную переменную-текст, или разбить полученные данные на отдельные переменные, не собранные в массив... В целом как угодно, но лучше когда однотипные данные хранятся вместе и проиндексированы. Т.е. массив.
__________________
Reality.getBounds(this); |
|
|||||
|
Здравствуйте еще раз!
Опять нужна помошь . Делаю галлерею с превьюшками, при клике на которых раскрывается фото. Делаю не через xml, потому что пока не умею. А проблема собственно вот в чем: при клике на превьюшке должна проигрыватся сначала анимация открытия фона окна для фото, а потом должна подгрузиться сама фото. Но на деле, фото и анимация начинают грузиться одновременно.(открывается фото, а за ним играется анимация появления фона). Фото подгружается в пустой мувик photo. Но если я смещаю кадр с этим мувиком на любой , кроме первого фрейма, фото перестает грузиться. А мне нужно чтоб загрузка фото начиналась с 25 кадра. Вопрос такой, как не меняя сильно того, что есть, начать загрузку фото, после проигрыша анимации раскрытия фона окна. Файл с исходником прикрепляю. Заранее благодарю за любую помощь ![]() |
![]() |
![]() |
Часовой пояс GMT +4, время: 08:17. |
|
|
« Предыдущая тема | Следующая тема » |
|
|