IPB

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> HTML-шаблон некэшируемого флеша, Знатокам JavaScript
  • Как продвинуть сайт на первые места?
    Вы создали или только планируете создать свой сайт, но не знаете, как продвигать? Продвижение сайта – это не просто процесс, а целый комплекс мероприятий, направленных на увеличение его посещаемости и повышение его позиций в поисковых системах.
    Ускорение продвижения
    Если вам трудно попасть на первые места в поиске самостоятельно, попробуйте технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Если ни один запрос у вас не продвинется в Топ10 за месяц, то в SeoHammer за бустер вернут деньги.
    Начать продвижение сайта
  • Сервис онлайн-записи на собственном Telegram-боте
    Тот, кто работает в сфере услуг, знает — без ведения записи клиентов никуда. Мало того, что нужно видеть свое расписание, но и напоминать клиентам о визитах тоже. Нашли самый бюджетный и оптимальный вариант: сервис VisitTime.
    Для новых пользователей первый месяц бесплатно.
    Чат-бот для мастеров и специалистов, который упрощает ведение записей:
    Сам записывает клиентов и напоминает им о визите;
    Персонализирует скидки, чаевые, кэшбэк и предоплаты;
    Увеличивает доходимость и помогает больше зарабатывать;
    Начать пользоваться сервисом
chingachgoog
сообщение 22.09.2010 - 07:29
Сообщение #1


Ветеран конференции
*****

Группа: Пользователь
Сообщений: 1102
Регистрация: 27.02.2009
Из: Moscow
Пользователь №: 9144



Решил создать простецкий шаблончик некэшируемого флеша. Вот что вышло:

Цитата
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>

<title>Некэшируемый флеш</title>

</head>

<body bgcolor="#000000">

<object
classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
width="100%"
height="100%"
id="mySWF"
align="middle">

<param name="movie" value="" />
<param name="scale" value="noscale" />
<param name="bgcolor" value="#ffffff" />

</object>

<script>
<!--
mySWF.movie="Название_ролика.swf?"+new Date()

//-->
</script>

</body>
</html>


Т.е. ИЗНАЧАЛЬНО я создаю объект с пустым параметром movie, а потом через JS этот параметр дозаполняю.
Но объект - это только для IE. В других браузерах надо использовать embed. И тут у меня возник затык sad.gif


Цитата
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>

<title>Некэшируемый флеш</title>

</head>

<body bgcolor="#000000">

<object
classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
width="100%"
height="100%"
id="mySWF"
align="middle">

<param name="movie" value="" />
<param name="scale" value="noscale" />
<param name="bgcolor" value="#ffffff" />

<embed
src=""
scale="noscale"
bgcolor="#ffffff"
width="100%"
height="100%"
name="mySWF"
align="middle"
type="application/x-shockwave-flash" />

</object>

<script>
<!--
mySWF.movie="Название_ролика.swf?"+new Date()

//-->
</script>

</body>
</html>


Не понимаю, как обратиться динамически к эмбеду, чтобы ДОПИСАТЬ в него src?


--------------------
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
HaWK
сообщение 22.09.2010 - 11:18
Сообщение #2


Заряд: 100%
*****

Группа: Модераторы
Сообщений: 1110
Регистрация: 12.03.2008
Пользователь №: 4145



А воспользоваться скриптом php?
Код
<?
$mySWF = "Название_ролика.swf?" . date();
?>
<embed
src="<? echo $mySWF; ?>"
scale="noscale"
bgcolor="#ffffff"
width="100%"
height="100%"
name="mySWF"
align="middle"
type="application/x-shockwave-flash" />


Или даже так:
Код
<?
$mySWF = "Название_ролика.swf?" . date();
?>
<embed
src="<? echo '<script type=text/javascript>mySWF.movie="Название_ролика.swf?"+new Date();</script>'; ?>"
scale="noscale"
bgcolor="#ffffff"
width="100%"
height="100%"
name="mySWF"
align="middle"
type="application/x-shockwave-flash" />

Хотя второй вариант по-моему не сработает, но попробовать стоит.

Сообщение отредактировал HaWK - 22.09.2010 - 11:22
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
chingachgoog
сообщение 22.09.2010 - 13:50
Сообщение #3


Ветеран конференции
*****

Группа: Пользователь
Сообщений: 1102
Регистрация: 27.02.2009
Из: Moscow
Пользователь №: 9144



Хочется обойтись клиентским скриптом, а не серверным.
Шаблон должен быть минимальным и понятным.


--------------------
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
chingachgoog
сообщение 23.09.2010 - 16:50
Сообщение #4


Ветеран конференции
*****

Группа: Пользователь
Сообщений: 1102
Регистрация: 27.02.2009
Из: Moscow
Пользователь №: 9144



В общем я решил пойти несколько другим путем:


Код
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>

<title>Некэшируемый флеш</title>

</head>

<body bgcolor="#000000">

    &lt;script>
    <!--
        var isIE=false
    //-->
    </script>

    <!--[if IE]>
    &lt;script>
    <!--    
        isIE=true;
    //-->
    </script>
    <![endif]-->

    &lt;script>
    <!--    
        // Создаем и внедряем в тело объект
        var node=document.createElement('object');
        document.body.appendChild(node);
        var name="Название_ролика.swf?"+new Date()
        
        if ( isIE) {
            node.classid= "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
            node.movie=name
            node.id="mySWF"            
        } else {
            node.name="mySWF"
            node.data=name
            node.type="application/x-shockwave-flash"
        }

        node.width="100%"
        node.height="100%"
        node.scale="noscale"
        node.align="middle"                        
    //-->
    </script>
</body>
</html>


Собственно должно работать в любом браузере.
Только надо помнить - это код именно для отладки, когда кэш не приемлем.

add:

Почему-то свойство bgcolor назначается только в IE, в остальных браузерах выставляется по умолчанию в белый цвет, что собственно меня не напрягает.

Сообщение отредактировал chingachgoog - 23.09.2010 - 17:35


--------------------
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
tiHo
сообщение 23.09.2010 - 23:48
Сообщение #5


C:\>
*****

Группа: Супермодераторы
Сообщений: 1598
Регистрация: 10.04.2006
Из: Млечный Путь, 3-я планета от Солнца, Россия, Московская область, Жуковский.
Пользователь №: 293



Цитата
Почему-то свойство bgcolor назначается только в IE, в остальных браузерах выставляется по умолчанию в белый цвет, что собственно меня не напрягает.


У меня в 4-х браузерах адекватно работает.


--------------------
Вопрос-ответ для flash-разработчиков
С тех пор, как за Теорию Относительности принялись математики, я ее сам больше не понимаю. (с) Эйнштейн А.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
chingachgoog
сообщение 24.09.2010 - 11:47
Сообщение #6


Ветеран конференции
*****

Группа: Пользователь
Сообщений: 1102
Регистрация: 27.02.2009
Из: Moscow
Пользователь №: 9144



Цитата(tiHo @ 24.09.2010 - 00:48) *
У меня в 4-х браузерах адекватно работает.


У меня этот код
Код
node.bgcolor="#0000ff"

работал только в IE, а в остальных фон ФП оставался белым.


--------------------
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
tiHo
сообщение 25.09.2010 - 00:05
Сообщение #7


C:\>
*****

Группа: Супермодераторы
Сообщений: 1598
Регистрация: 10.04.2006
Из: Млечный Путь, 3-я планета от Солнца, Россия, Московская область, Жуковский.
Пользователь №: 293



А все, я просто не правильно понял.

А так не пробывал: document.all("node").bgcolor=....... ?


--------------------
Вопрос-ответ для flash-разработчиков
С тех пор, как за Теорию Относительности принялись математики, я ее сам больше не понимаю. (с) Эйнштейн А.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
chingachgoog
сообщение 4.10.2010 - 12:34
Сообщение #8


Ветеран конференции
*****

Группа: Пользователь
Сообщений: 1102
Регистрация: 27.02.2009
Из: Moscow
Пользователь №: 9144



Цитата(tiHo @ 25.09.2010 - 01:05) *
А так не пробывал: document.all("node").bgcolor=....... ?


Так вообще нигде не работает, видимо синтаксическая ошибка. Но вообще, как только не пробывал...


--------------------
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
tiHo
сообщение 4.10.2010 - 22:47
Сообщение #9


C:\>
*****

Группа: Супермодераторы
Сообщений: 1598
Регистрация: 10.04.2006
Из: Млечный Путь, 3-я планета от Солнца, Россия, Московская область, Жуковский.
Пользователь №: 293



ну может скобки квадратные smile.gif если и так не прокатит - то я умываю руки...


--------------------
Вопрос-ответ для flash-разработчиков
С тех пор, как за Теорию Относительности принялись математики, я ее сам больше не понимаю. (с) Эйнштейн А.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
chingachgoog
сообщение 15.05.2012 - 19:09
Сообщение #10


Ветеран конференции
*****

Группа: Пользователь
Сообщений: 1102
Регистрация: 27.02.2009
Из: Moscow
Пользователь №: 9144



Пока не забыл.

Вообщем дело с альтернативными браузерами в том, что у них есть только АТТРИБУТЫ свойств флеш-контрола, а самих СВОЙСТВ у них нет (вот и привет от ИЕ). Поэтому задать нужные параметры можно ТОЛЬКО через аттрибуты. Ну хоть так объектная модель все равно сохраняется, хоть и криво:

node.setAttribute('bgcolor', "#0000ff")

(эта байда записывается в свойство outerHTML и все, блин, других нативных свойств НЕТ! Ужос...)


--------------------
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
MustLive
сообщение 16.05.2012 - 00:20
Сообщение #11


Ветеран конференции
*****

Группа: Flash Zone Team
Сообщений: 4739
Регистрация: 10.03.2005
Из: Киев
Пользователь №: 5



chingachgoog

По большому счёту дело не в альтернативных браузерах, а в флеш-плеере (плагине) для них. И соответственно в технологии для его создания (ActiveX для IE и плагины для других), что влияет на возможности флеш плагина. Так что всё зависит от Адоба - с учётом ограничений технологии для создания плагина. Раз Адоб позволяет только через атрибуты, значит будет только так (пока Адоб не изменит ситуацию).

Заметь, что "альтернативными" эти браузеры называются только для ОС Windows, а для альтернативных ОС они уже такими не являются smile.gif. Под Mac OS уже IE "альтернативный", а под Linux/Unix системы вообще нет IE.


--------------------
Best wishes & regards,
MustLive
Администратор сайта
http://mlfun.org.ua
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
chingachgoog
сообщение 18.05.2012 - 09:14
Сообщение #12


Ветеран конференции
*****

Группа: Пользователь
Сообщений: 1102
Регистрация: 27.02.2009
Из: Moscow
Пользователь №: 9144



Цитата(MustLive @ 16.05.2012 - 01:20) *
По большому счёту дело не в альтернативных браузерах, а в флеш-плеере (плагине) для них.


Вряд ли плагины НАСТОЛЬКО разные. Насколько я понимаю, дело именно в ИЕ - он хитрым образом старается уравнять аттрибуты узла и свойства объекта. Т.е. тупой адобовский плагин скорее всего не создает свойств для своего контрола (а должен бы учитывая объектную модель), но ИЕ конвертирует аттрибуты в свойства и дальше с контролом в ИЕ можно обращаться как с настоящим объектом - через свойства.

Это удобная фича. И безопасная (в отличии от обратного конвертирования свойств в аттрибуты)


--------------------
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
MustLive
сообщение 29.05.2012 - 00:26
Сообщение #13


Ветеран конференции
*****

Группа: Flash Zone Team
Сообщений: 4739
Регистрация: 10.03.2005
Из: Киев
Пользователь №: 5



Технологии разные - ActiveX и модель расширений браузеров Netscape. Все альтернативные браузеры используют именно модель Netscape для плагинов, поэтому Адоб выпускает только один плагин для всех браузеров и отдельно ActiveX-компонент для IE. Microsoft таким образом решила выделиться (и поконкурировать с Netscape, создав свою технологию расширений браузера), а в последние годы решила таким образом выделиться Гугл, для браузера которой выпускается своя версия плагина - "флеш-плагин для Chrome".

Т.е. дело может быть именно в технологии ActiveX, что именно в этой версии Адоб сделала этот функционал, чего нет в Netscape-версии плагина. Хотя вариант, что это сам IE конвертирует атрибуты в свойства не исключён. Ты можешь проверить эту идею на других плагинах (ActiveX-компонентах для IE и плагинах для других браузеров), таких как Shockwave Director, QuickTime и RealPlayer.


--------------------
Best wishes & regards,
MustLive
Администратор сайта
http://mlfun.org.ua
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия Сейчас: 19.01.2013 - 01:12