Rambler's Top100
Приветствуем, Гость: Регистрация | Вход
 
Главная | FAQ | Поиск | Пользователи | Группы
 

Flash-кнопки и Opera

 
Начать новую тему   Ответить на тему    Список форумов Форум Macromedia Dreamweaver -> Работа с Dreamweaver
 
Автор Сообщение
Килик
Новичок

Новичок


Возраст: 44

Зарегистрирован: 04.02.2009
Сообщения: 17

СообщениеДобавлено: Ср Фев 04, 2009 7:05 am    Заголовок сообщения: Flash-кнопки и Opera Ответить с цитатой

Я уже давно пользуюсь Dreamweaver 8, уже сделал полностью на нём такой вот сайт:

[code:1:c488f07d38]http://gtagta.com/[/code:1:c488f07d38]

сейчас делаю ещё один новый, и в нём очень хочу применять Flash-кнопки. Уже установил для пробы несколько кнопок, сделанных в самом Dreamweaver 8 и "сторонний ролик" для пробы. В Эксплорере и Мозилле всё работает на-ура, кнопки кликабельны и анимируются при подведении мыши:

[code:1:c488f07d38]http://gamewalk.ru/[/code:1:c488f07d38]

А вот Opera при наведении мыши на ролик или кнопку вместо анимации выдаёт такую рамочку:

Заголовок: Щёлкните для активации использования этого элемента управления.

Может, кто-то из посетителей и кликнет, но смысл анимации теряется полностью. Посмотрел тут некоторые сайты с Flash-ссылками, сделанные пользователями форума из раздела "Flash". Там то же самое - в Опере ссылки изначально не кликабельны и анимация при подведённой мыши не воспроизводится. От версии Оперы тоже ничего не зависит - проверяли на разных.

Тут на форуме есть ссылка на программу-конвертер, она работает, уже пробовал, но после её действия нормальный просмотр страницы в Dreamweaver 8 уже невозможен, к тому же её надо запускать по-новый для каждой вновь создаваемой страницы.

Мой вопрос простой: можно ли средствами Dreamweaver 8 или вставкой какого-то простого дополнительного кода в страницу сделать так, чтобы Flash-кнопки нормально работали во всех браузерах.
Вернуться к началу
OldFornit
Модератор

Модератор


Возраст: 30

Зарегистрирован: 12.05.2005
Сообщения: 846

СообщениеДобавлено: Ср Фев 04, 2009 8:45 am    Заголовок сообщения: Ответить с цитатой

Для начала попробуйте понять, ЧТО делает этот конвертор с Вашим кодом.
Вернуться к началу
Килик
Новичок

Новичок


Возраст: 44

Зарегистрирован: 04.02.2009
Сообщения: 17

СообщениеДобавлено: Ср Мар 11, 2009 11:43 am    Заголовок сообщения: Ответить с цитатой

Для того, чтобы понять зачем он это делает, у меня лично мозгов не хватает. Но - проблема стоит очень насущно, так как мой новый сайт потихоньку обретает "плоть" и проблема с неработающими без предварительного клика Флэш-ссылками и другим активным содержимым(движение в скроллинговых кнопках) в браузере Опера стоит очень насущно, я попытаюсь описать очень чётко, ЧТО этот конвертер делает со страницей:

1. Конвертер считывает код страницы из выбранной папки, находит там указания на вставку в страницу Флэш-роликов и кнопок и создаёт в этой же папке файл Ява-Скрипт такого содержания:

function InsertObject1()
{
document.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="1000" height="120">');
document.write(' <param name="movie" value="/R/R_1.swf">');
document.write(' <param name="quality" value="high">');
document.write(' <embed src="/R/R_1.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="1000" height="120"></embed>');
document.write(' </object>');
}

function InsertObject2()
{
document.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" width="103" height="24">');
document.write(' <param name="movie" value="Menu_files/Buttons/button1.swf">');
document.write(' <param name="quality" value="high">');
document.write(' <param name="bgcolor" value="#ffe1c7">');
document.write(' <embed src="Menu_files/Buttons/button1.swf" quality="high" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="103" height="24" bgcolor="#ffe1c7"></embed>');
document.write(' </object>');

И так далее, то есть каждым номером функции InsertObject описывает флэш-объект точно также, как он написан в исходном коде страницы, ничего к этому куску кода не добавляя.

2. Вышеобозначенные куски кода на самой странице заменяются конвертером на строчки типа:

<script src='object.js' type='text/javascript'></script><script type='text/javascript'>InsertObject1();</script>

и точно также вместо кода на вставку второго флэша:

<script src='object.js' type='text/javascript'></script><script type='text/javascript'>InsertObject2();</script>

Как видите, конвертер в собственно коде особо ничего не меняет, только переносит куски кода с вставкой флэша в сторонний файл, который обязательно должен находиться на сервере в той же папке, что и HTML с флэшем. Этих HTML-лей в папке может быть много, действие файла Ява-Скрипт будет распространяться и на них. На такие же переделанные странички, располагающиеся в других папках, действие этого скрипта не распространяется, уже проверял по-всякому, в каждой папке с HTML-лями обязательно должен быть этот Ява-Скрипт файл, тогда всё будет работать и флэшки в Опере сразу начинают быть активными.

Итак, метод действует безотказно, но есть при этом куча неудобств :

1. Визуальная часть редактора Dreamwever 8 при этом перестаёт быть такой уж "визуальной" - все флэши в ней после конвертации страниц выглядят как просто пустые строчки. Это не очень удобно, так как теперь в редакторе и в браузерах страницы выглядят совершенно абсолютно по-разному.

2. Приходится в каждую папку со стандартными страницами, сделанными на основе переконвертированной, класть этот самый Ява-Скрипт файл.

Проблему и то ЧТО делает конвертер я описал достаточно подробно. Вопрос такой - можно ли этот самый трюк сделать внутри самой страницы без переконвертации и отдельного Ява-Файла на основе анализа того процесса конвертирования, что я вам тут описал???

Большая просьба помочь, сам не разберусь , так как нуб полнейший !!!
Вернуться к началу
OldFornit
Модератор

Модератор


Возраст: 30

Зарегистрирован: 12.05.2005
Сообщения: 846

СообщениеДобавлено: Ср Мар 11, 2009 11:56 am    Заголовок сообщения: Ответить с цитатой

1. копать в сторону swfobject
2. Постараться забить на "чистый" визуальный режим редактирования - настоящую гибкость может обеспечить только хорошее знание css
Вернуться к началу
Килик
Новичок

Новичок


Возраст: 44

Зарегистрирован: 04.02.2009
Сообщения: 17

СообщениеДобавлено: Ср Мар 11, 2009 12:50 pm    Заголовок сообщения: Ответить с цитатой

Попробовал только что метод Swfobject 2 очень подробно описанный здесь:

http://designformasters.info/posts/flash-embed-with-swfobject-2/

Результат - тот же - в Опере: Щёлкните для активации активного содержимого...javascript:emoticon('Crying or Very sad')

Так что спасибо конечно за помощь, но видимо всё же придётся мне пользоваться как и задумал, скриптом+перекодированным HTML-лем, благо этот метод реально помогает в борьбе с ненавистной Оперой...
Вернуться к началу
OldFornit
Модератор

Модератор


Возраст: 30

Зарегистрирован: 12.05.2005
Сообщения: 846

СообщениеДобавлено: Ср Мар 11, 2009 12:57 pm    Заголовок сообщения: Ответить с цитатой

Забавно.
Видимо, Вы пробовали статический метод внедрения объектов. Попробуйте динамический.
Вернуться к началу
Килик
Новичок

Новичок


Возраст: 44

Зарегистрирован: 04.02.2009
Сообщения: 17

СообщениеДобавлено: Ср Мар 11, 2009 1:20 pm    Заголовок сообщения: Ответить с цитатой

На той же страницы в конце статьи про динамический метод(в котором я если честно не особо разобрался) написан следующий совет:

- Используйте SWFObject HTML и JavaScript генератор для автоматического создания кода [http://code.google.com/p/swfobject/wiki/generator26]

Т.е. возвращаемся к тому же, что и было - конвертеру-генератору...

На самом деле метод установки флэш в самом Dreamwever 8 вполне меня устраивает, не надо особо ничего мудрить с кодом, и если бы не Опера... не докапывался бы я до вас с таким специфическим вопросом.

А так из всех предложенных вариантов старый метод - самый пока удобный получается, тем более что запустить конвертер придётся лишь один раз - остальные страницы у меня будут содержать точно такие же флэши и делаться методом copy-paste с переконвертируемой.

Так что конечно проблему полной визуализации в редакторе решить как я понял не удастся, зато хоть код самой странички будет покороче и главное - всё будет работать в Опере как надо.

А на визуализацию придётся поднять руку вверх, затем резко кинуть её вниз, и забить, как большинство сайтостроителей вообще забивает на данную проблему с флэшем и Оперой.
Вернуться к началу
OldFornit
Модератор

Модератор


Возраст: 30

Зарегистрирован: 12.05.2005
Сообщения: 846

СообщениеДобавлено: Ср Мар 11, 2009 1:34 pm    Заголовок сообщения: Ответить с цитатой

можно еще забить на сам флеш Wink . Практически все то же можно спокойно решить, зная css и капельку js (особенно представля себе возможнсти jquery и иже с ним)
Вернуться к началу
RoooM
Новичок

Новичок


Возраст: 35

Зарегистрирован: 14.10.2009
Сообщения: 1

СообщениеДобавлено: Ср Окт 14, 2009 7:43 pm    Заголовок сообщения: Есть решение для активного элемента флеш в Опере! Ответить с цитатой

Если опера не показывает анимацию встроенного флеша и просит
Щелкнуть для активации использования элемента управления, то:
нужно вставить код флеш-ролика в страницу следующим образом:

<script type="text/javascript">
AC_FL_RunContent( 'codebase','http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=4,0,0,0','width','410','height','550','id','sim_anim2','align','middle','src','/images/3d/sim_anim2','menu','false','quality','high','wmode','#c2dae5','name','sim_anim2','pluginspage','http://www.macromedia.com/go/getflashplayer','movie','images/3d/sim_anim2' ); //end AC code
</script>
<noscript>
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=4,0,0,0" width="410" height="550" id="sim_anim2" align="middle">
<param name="movie" value="/images/3d/sim_anim2.swf" />
<param name="menu" value="false" />
<param name="quality" value="high" />
<param name="wmode" value="#c2dae5" />
<param name="bgcolor" value="#c2dae5" />
<embed src="/images/3d/sim_anim2.swf" menu="false" quality="high" wmode="#c2dae5" width="410" height="550" name="sim_anim2" align="middle" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>
</noscript>

Вставляю код, как есть со своего сайта www.rooom.com.ua
Использован тут: http://www.rooom.com.ua/anim002.html

Разобраться не сложно! sim_anim2 - везде меняйте на свое название файла (путь не забудьте, если файл не в корне со страницей)
Ну и размеры правьте свои. Только так флеш будет работать правильно! Проверено на 3 версиях оперы, 4 ИЕ эксплорерах, на 2 мозиллах и на 1 гугле-хром.
И еще:
В странице где стоит флеш обязательно после </title>
вставьте ссылку на скрипт:

<script src="AC_RunActiveContent.js" type="text/javascript"></script>

И собственно сам скрипт тут (ложить на хост рядом же):
http://www.rooom.com.ua/AC_RunActiveContent.zip

Успехов!
Вернуться к началу
Килик
Новичок

Новичок


Возраст: 44

Зарегистрирован: 04.02.2009
Сообщения: 17

СообщениеДобавлено: Чт Окт 15, 2009 7:43 am    Заголовок сообщения: Ответить с цитатой

Спасибо за совет! Мой сайт уже теоретически готов:

http://gamewalk.ru

действовал по вышеописанной мной схеме, вроде всё работает. Ваш метод наверняка многих заинтересует, так как он хорош для вставки различных флэшей в страницы.
Вернуться к началу
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Форум Macromedia Dreamweaver -> Работа с Dreamweaver Часовой пояс: GMT + 2
Страница 1 из 1

 



Powered by phpBB © 2001, 2005 phpBB Group
Русская поддержка phpBB


Заблокировано регистраций / сообщений: 48635 / 0

Rambler's Top100 Рейтинг@Mail.ru