![]() |
Проблема с HTML и JavaScript'ом
Такая штука - мне надо было вставить в страницу со флешом (уже в HTML) JavaScript. Там просто рандомом в тело документа надо было вставить текст. Простенько, яно! НО! Даже с помощью абсолютного позиционирования не получается. Флеш идет сверху. Как поместь так, что бы надпись была как бы слоем над? Или как это сделать с помощью экшн-скрипта? Задание такое - надо что бы в заголовок (там идет тело флеша) вставить текст, котрые выбирается рандомом из перечисленного. Это сделан с помощью массива. если надо - вставлю сам пример полностью. Помогите, умоляю!
Заранее блгагодарен. :) |
давай примерчик конечно :cool:
|
Примерчик
Ну, во-первых, спасибо за помощь.
Огромное такое спасибо. Теперь конкретно: Мне нужно было сделать так: я раньше писал отдельный файл с JavaScript'ом. Он выглядел так: -----------------------(==random.js==) a = new Array(7); a[0]="<b>Нельзя впихать невпихуемое!</b><br><i>Народное творчество</i>"; a[1]="<b>Он ударил тебя по щеке,- отруби ему руки!</b><br><i>Из личных соображений</i>"; a[2]="<b>Поспешишиь - успеешь, но не туда, куда нужно.</b><br><i>Аквит</i>"; a[3]="<b>Власть - это то, от чего отказываются честные люди.</b><br>Аквит<i></i>"; a[4]="<b>Настроение бывает не только плохое, но и ужасное, как и всяческое проявление идиотизма.</b><br>Аквит - народная глупость<i></i>"; a[5]="<b>Это тебе не шубу в трусы заправлять!</b><br><i>Кролм</i>"; a[6]="<b>Я не пил целый месяц! Какая сила воли!</b><br><i>Барсук</i>"; now= new Date(); i = now.getSeconds() % 7; document.write(a[i]); ---------------------- потом в тело HTML-страницы, там где мне это нужно вставлял код: <script language="javascript" src="random.js"></script> с помощью абсолютного позиционирования задавал координаты, и в конце концов получал рандомом высвечивающиеся мысли. (для примера можешь зайти на ddtworld.spb.ru, там размышления шевчука таким образом вставляются) Теперь возникла неоюходимость вставить это или во Флеше со помощью ActionScript'а, которого я к сожалению еще не знаю. Или же поверх с помощью все того же позиционирования (первый вариант предпочтительней, так как то место куда вставить надо слложно расчитать для разных разрешений экрана). Попробовал знакомый мне метод - с помощью позиционирования. Не выходит. Флеш ложиться поверх. Помоги, коль можешь. |
Флэшовый ролик не является HTML-объектом и не подчиняется правилам zindex-позиционирования DHTML. Существует решение, но оно привязано к версии браузера, что не есть гуд.
|
Зачем это делать через Ж:-)
Вообщем так, есть такая волшебная строка во Флеш swLiveconnect=TRUE
С ее помощью ты читаешь ВСЕ переменные из своей ХТМЛ странички во флеш. А потом просто присваиваешь нужную тебе динамическому текстовому полю. Если совсем туго не разберешься - звякин 65-24-26 Саша, помогу с примером. Впрочем, когда ты сделаешь етот самый swLiveconnect=TRUE (это вовнутря тега EMBED), не забудь там же ему присвоить еще и имя ОБЯЗАТЕЛЬНО!!! Например - NAME="TEST" Тогда переменная которую ты таки хочешь передать во флеш в твоем скрипте будет выглядеть примерно так: <script> var date_to_show = display_date(); window.document.TEST.SetVariable("txt2",date_to_show); </script> Где "txt2" это имя твоей переменной ВО ФЛЕШ, не перепутай:-) Ну думаю разберешься, ежели нет - звони. |
Re: Зачем это делать через Ж:-)
Цитата:
|
А зачем вообще помещать текст поверх флэша??? Не проще ли создать поле в самом флэше и грузить туда рандомный текст?
|
Spv!!!
Буду архиблагодарен, если поможешь. Напишешь как это делается. В этом -то и состоит суть вопроса. |
Re: Re: Зачем это делать через Ж:-)
Цитата:
|
4Крейзи. ЗЫ: Ты возможно имел в виду форматирование фонтов в флеш? Вопрос, что мешает ему задать шрифт в самом динамическом текстовом поле?
|
Я имел в виду, что Flash поддерживает использование HTML-разметки в текстовых полях, но в очень ограниченном виде. Если этого достаточно -- действительно лучше сделать во Flash'е.
|
2Nirva
1. Создаёшь дин. текстовое поле во флэше и задаешь ему Variable какое-нить типа "tips". Можно ещё отметить галочку HTML (чтобы потом куски текста в этом поле жирным могли быть, другого шрифта и т.п.). 2. Во фрэйме (можно прямо в первом) вставляешь такой скрипт: loadVariablesNum("tips/tip" add int(Math.random ()*10) add ".txt",0); где 10 - это число возможных текстов. 3. Создаёшь рядом с SWFкой папочку "tips" и в ней для каждого текста свои файлы с именами tip0.txt , tip1.txt ... tip9.txt. Формат файла такой: tips=Нельзя впихать невпихуемое! (Народное творчество) Если на первом шаге была выставлена галочка HTML, то можно так: tips=<b>Нельзя впихать невпихуемое!</b> <i>Народное творчество</i> |
НЕТ! НЕТ! НЕТ!
Ну при чем тут текст! Я даже пример дал. При чем тут шрифт, совсем ламер, что ли?
Я ж сказал - КАК ВЫПОЛНИТЬ ЭТУ ПРОЦЕДУРУ ВО ФЛЕШЕ С ПОМОЩЬЮ ACTIONSCRIPT'а??? При чекм тут CSS? Кстати, если то что вы там писали блокирует CSS то на фиг надо, яих тоже использую. Просто, ясно, а свели все в абсурд какой-то.... :) |
SPV! Спасибо.
Спасибо хоть тебе. Я еще не пробовал, но обязательно. если получится - спасибо трижды.
А остальные - спасибо, конечно, но вопрос ну никак уж не в шрифтах... |
СПАСИБОЧКИ!!!! Но....
SPV!
Огромное тебе спасибо. Красотуля. Все по полному вперед. Но два вопроса: можно ли в это поле вставить не стандартный шрифт и что для этого нужно(я имею ввиду будет ли шрифт отображаться у пользователя, если стоит флажок на НТML). И второй - дело в том, что я это создал отдельным слоем общей анимации. Как только анимация начинает повторяться слой перелоадивается, и выводит снова рандомный текст. Как этого избежать? Зациклить один слой и сделать статичными другие? Заранее спасибо. ВСЕМ СПАСИБО! Я ВАС ВСЕХ ЛЮБЛЮ! |
2Nirva
Вообще-то всяческую анимацию надо бы выносить в отдельные мувики, тогда она не будет тебе мешать использовать верхний уровень (_root). Тогда у тебя основной фильм будет стоять (stop()), а анимация - вращаться в мувах, никому не мешая). Можно сделать наоборот: выдели свое текстовое поле, сделай из него мувик - F8 - movieclip. Помести этот мувик в отдельный слой (например - самый верхний). Вместо loadVariablesNum используй загрузку переменных в конкретный мувик - тот самый, что ты только что создал (не забудь его назвать). Синтаксис не помню - посмотри в конструкторе Флеша. Наконец, сделай так, чтобы этот слой имел один ключевой кадр - в самом начале - и присутствовал на всем протяжении фильма (в последний кадр - F5). Должно работать. 2Профессор Выбегалло То, что ты предлагаешь, НЕ РАБОТАЕТ в шестом нетскейпе, под Маком и, вероятно, еще в чем-нибудь. |
| Часовой пояс GMT +4, время: 23:36. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.