PDA

Просмотр полной версии : flash и опера


Atarion
12.04.2011, 22:35
офигеть!!!! никакими средствами не получается сделать прозрачный фон у флэшки в опере. кроме того див слой с флэшем там всегда нраверху(!!!!) все зависимости от z-index кто нибудь знает пути решения одной из этих проблем?

mooncar
12.04.2011, 23:14
SWFObject (http://designformasters.info/posts/flash-embed-with-swfobject-2/) + wmode:"transparent"

Например:

var flashvars = false;
var params = { menu: "false", allowScriptAccess: "always", allowFullScreen: "false", quality: "high", bgcolor: "#f2f2f2", wmode: "transparent" };
var attributes = { id: "logo_obj" };
swfobject.embedSWF("flash/logo.swf", "logo", "140", "80", "9.0.0", "flash/expressInstall.swf", flashvars, params, attributes);

Можно просто, при обычной публикации wmode задать transparent в двух местах - для IE и для других браузеров. Но

Atarion
12.04.2011, 23:30
а позвольте спросить - я краем глаза это где то видел но и сейчас не понимаю
вот этот код который вы написали это код ЧЕГО?
где его прописывать то?
если это java script то какова часть в html?

mooncar
12.04.2011, 23:39
См. по ссылке, которую я вам дал. Там всё на русском и отлично изложено. Личная рекомендация - "Динамический способ".
Там на пару минут всех делов. Когда разберетесь, 99% проблем с публикацией останутся в прошлом.

Atarion
12.04.2011, 23:46
секундочку. а то я чувствую я сейчас начну разбиратся. а потом окажется что бестолку. у меня прозрачный флэш и флэш ролики везде публикуются. ТОЛЬКО в опере ничего не работает. почему вы уверены что этот способ сработает в чем там отличие и суть?*

mooncar
13.04.2011, 00:00
Потому что библиотечные методы SWFObject берут на себя разбирательства - что там у юзера за браузер.
Хотя если FF, Хром и Сафари кажет как надо, а Опера нет - странно.
Разбираться там особо не надо. Скопируйте код, скачайте саму библиотеку, файл expressInstall.swf и пропишите всё как ниже, изменив пути и прочие параметры:
<head>
.
.
<script type="text/javascript" src="js/swfobject.js"></script>
<script language="javascript">
var params = { menu: "false", allowScriptAccess: "always", allowFullScreen: "true", quality: "high", wmode: "transparent" };
swfobject.embedSWF("flash/player.swf", "player", "190", "184", "9.0.0", "flash/expressInstall.swf", false, params, false );
</script>
.
.
</head>
<body>
.
.
<div id="player"></div>
.
.
<body>

Atarion
13.04.2011, 00:02
спасибо я сейчас пробую...

Добавлено через 6 минут
я все попробовал! все то же самое! вы сами то пробовали В ОПЕРЕ!!!!!!!???
не решаетсян и одно из проблем- прозрачность - не работает. слой сверху - не ставится

<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>SWFObject dynamic embed - step 3</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript" src="swfobject.js"></script>


<script type="text/javascript">
var flashvars = {};
var params = {};
var attributes = {};

var params = { menu: "false", allowScriptAccess: "always", allowFullScreen: "false", quality: "high", bgcolor: "#f2f2f2", wmode: "transparent" };
swfobject.embedSWF("tr.swf", "myContent", "300", "120", "9.0.0",
"expressInstall.swf", flashvars, params, attributes);
</script>

<style type="text/css">
body {
background-color: #006;
}
</style>
</head>
<body>
<div id="myContent">
<p>Alternative content</p>
</div>




<div style="background-color:#F00; position:absolute; width:100%; height:400px; z-index:34; top:0px"></div>



</body>
</html>

mooncar
13.04.2011, 00:09
я все попробовал! все то же самое! вы сами то пробовали В ОПЕРЕ!!!!!!!???

Я в ней много лет и работаю и серфинг тоже.
Сейчас посмотрю, что там у вас.

Для начала сделайте обертку для слоя в виде еще одного слоя. Я всегда так делаю.
Тогда над контейнером можно будет манипулировать CSS, ведь после публикации флешки в ее div он перестает вести себя как обычный DOM-элемент, например, теряет свой id (Нужно задавать заново в attributes)

<div id="container">
<div id="myContent">
<p>Alternative content</p>
</div>
</div>

Добавлено через 7 минут
Отправил в личку ссылку на рабочий пример. Посмотрите в том числе и в Опере. Там особо прозрачность незаметна (она по краям), флешка переделана, но всё же.

Atarion
13.04.2011, 00:19
поставил не помогло.

Добавлено через 2 минуты
в примере не вижу никакой прозрачности. да и все равно кода там нет.

mooncar
13.04.2011, 00:23
в примере не вижу никакой прозрачности.
По краям флешки - тени.
А код страницы легко увидеть. В Опере - правой кнопкой - "Исходный код"
UPD. Еще кинул. Там явно и много.

Atarion
13.04.2011, 00:26
по краям флэшки тени могут быть сделаны в самой флэшке! разве нет?

Добавлено через 1 минуту
я только что скопировал оттуда код внедрения один в один и все равно не работает.

mooncar
13.04.2011, 00:34
Киньте ссылку на вашу страницу. И объясните, как у вас там прозрачность должна правильно выглядеть.

Atarion
13.04.2011, 00:46
forumgate.ho.ua/test.php красный слой - поверх флэша везде поверх кроме оперы. ну и прозрачность..

mooncar
13.04.2011, 01:00
UPD. Разобрался. Флешка есть, в том числе и в Опере, она под красным слоем. Всё работает.
Разве она не поверх должна быть?

Atarion
13.04.2011, 01:11
исправил вашей строчкой не помогло. флэшка видна В ОПЕРЕ! потому что гугл хром к примеру правильно закрывает слоем вот она и не видна

mooncar
13.04.2011, 01:15
Нет, всё работает.
Опера 11.01.
Уверен, что и в других версиях должно быть ок.
Может у вас затюнинговано как-то в настройках?

Atarion
13.04.2011, 01:18
http://s011.***********/i317/1104/30/8528ed15a4df.png (http://www.***********)

mooncar
13.04.2011, 01:20
Странно. Вы же видите, что у меня ок.
Попросите еще кого-нибудь посмотреть.
Полазайте в настройках Оперы.
Обновите плеер, браузер.
Попробуйте на другом компе.
Заведите нового юзера в системе, проверьте из-под него.

Atarion
13.04.2011, 01:21
о! я сейчас сменю слои. посмотрим будет ли у вас прозрачность!

Добавлено через 3 минуты
попробуйте с ейчас

Добавлено через 8 минут
линялый кролик! обновил оперу -все заработало.

mooncar
13.04.2011, 01:30
Сейчас вижу только красный прямоугольник.
PS. У вас код неаккуратный, пропущены теги в HTML, аргументы в публикации SWFObject. Сделайте всё аккуратно.
Больше помочь пока не могу, мне пора, разбирайтесь!

Atarion
13.04.2011, 01:32
линялый кролик! обновил оперу все заработало.

Paul Kart
24.01.2012, 15:03
Хоть тема и старая, но добавлю своих 5 капель...

У меня тоже была такая проблема с Оперой, решилось всё простым удалением плагина flash плэера (Панель управления->Установка и удаление программ) и последующим его обнавлением.