Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   HTML/DHTML/CSS/JS/VB (http://www.flasher.ru/forum/forumdisplay.php?f=66)
-   -   Снова о багах Оперы (http://www.flasher.ru/forum/showthread.php?t=75276)

Niketas 09.02.2006 00:09

Снова о багах Оперы
 
И снова о багах оперы.

Начну издалека.
Прочитал в умной книжке, что прозрачность флэшки на html-странице, задающаяся параметром wmode (только для тега <object>), включается (т.е. работает) "...только под Windows с управлением Flash Active X", а конкретно с Internet Explorer'ом 4.0 (ну и, видимо, выше).

Сам я юзаю Opera 7.54u2, поэтому новость, что прозрачность пашет лишь под эксплорером, меня не обрадовала. Действительно, в опере флэшка выглядит обыкновенно (т.е. background так и остается белым), а в эксплорере бэк исчезает.

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

Код:

<SCRIPT LANGUAGE="JavaScript">
<!--//

browser_name = navigator.appName;
browser_version = parseFloat(navigator.appVersion);

if (browser_name == "Microsoft Internet Explorer" && browser_version >= 4.0) { window.location.href = "explorer_top.html"; }
else { window.location.href = "top.html"; }

alert(browser_name);
alert(browser_version);
//-->

где explorer_top.html - страница с флэшкой, а
top.html - страница с какой-нибудь альтернативной навигацией.

Поясню, зачем два последних алерта. Открыв эту страницу в Opere (тогда алерты еще не были написаны), я почему-то перешел на страницу explorer_top.html, а не на top.html, как было задумано. В эксплорере страница открывается с работающей флэшкой, как и предполагалось.
Поэтому алерты вставил, чтоб выяснить, что за хрень.

Выяснил: алерты и в опере, и в эксплорере выдают одно и тоже: браузер - "Microsoft Internet Explorer", версия - "4".

Так вот, господа: ЧТО ДЕЛАТЬ? (если драйвера прямых рук последней версии нет)

Crazy 09.02.2006 01:15

Медитируй над этим:

Код:

<script>
for (i in navigator) {
  document.write('<br>navigator.' + i + '=' + navigator[i]);
}
</script>


TTS 09.02.2006 03:07

над этим проще:
alert(typeof(opera));

еще можно помедитировать над настройками оперы

KidsKilla 09.02.2006 13:28

1) медитируй над умными книшками.
8я+ опера, любой ффокс, любой осёл 4+ держат прозрачность. а патаматр вмоуд ставь и в эмбеде тоже.

2) для определения брвзера есть такой код:
alert(navigator.userAgent.toLowerCase().indexOf("opera"));

Coffee 11.02.2006 19:59

Все до истерики проще:
Код:

<object>
<param name="movie" value="swf/mega.swf" />
<param name="quality" value="high" />
<param name="wmode" value="transparent" />
<embed src="swf/mega.swf" wmode="transparent" quality="high" />
</object>

для броВзеров, которые не ИЕ существует <embed>.

KidsKilla 14.02.2006 03:15

Цитата:

Сообщение от Coffee
Все до истерики проще:
Код:

<object>
<param name="movie" value="swf/mega.swf" />
<param name="quality" value="high" />
<param name="wmode" value="transparent" />
<embed src="swf/mega.swf" wmode="transparent" quality="high" />
</object>

для броВзеров, которые не ИЕ существует <embed>.

1) "для броВзеров, которые не ИЕ" ембед можно пропускать. работает везде и всегда. (NN4 в расчет не берём)

2) для ИЕ ембед тоже существует разве что не в этом случае. Используется к примеру для вставки видео-аудио.

Madasan 18.02.2006 08:08

Цитата:

Сообщение от KidsKilla
1) "для броВзеров, которые не ИЕ" ембед можно пропускать. работает везде и всегда. (NN4 в расчет не берём)

ембед пропустил, не работает :( или я не правильно понял?


Часовой пояс GMT +4, время: 08:44.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.