Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   "Причесал" скриптик, а он в Опере не пошел (https://javascript.ru/forum/events/1887-prichesal-skriptik-v-opere-ne-poshel.html)

Mitrandir 30.09.2008 13:37

"Причесал" скриптик, а он в Опере не пошел
 
Приветствую всех участников поистине центрального JavaScript ресурса
Рунета!

Недавно для разминки мозгов решил облагородить один скриптик написанный в старом стиле, а именно:

СТАРЫЙ КОД

<SCRIPT type="text/javascript" language="JavaScript">

  var isIE = (navigator.appName.indexOf("Microsoft Internet Explorer") != -1);
    if(isIE)
        document.write('<BGSOUND src="sound.mp3" loop="1">');

var isEmbed = ((navigator.userAgent.toLowerCase().indexOf("gecko")!=-1)||((navigator.userAgent.indexOf("Opera") != -1)))
    if(isEmbed)
        document.write('<EMBED src="sound.mp3" loop="1"><EMBED>');
</SCRIPT>


НОВЫЙ КОД
<SCRIPT type="text/javascript" language="JavaScript">
      function play(){
var isIE = (navigator.appName.indexOf("Microsoft Internet Explorer") != -1);
    if(isIE){
    var bgsound = document.createElement("bgsound");
	bgsound.src = "sound.mp3";
	bgsound.loop ="1";
	document.body.appendChild(bgsound);}

var isEmbed = ((navigator.userAgent.toLowerCase().indexOf("gecko")!=-1)||((navigator.userAgent.indexOf("Opera") != -1)))
    if(isEmbed){
      var embed = document.createElement("embed");
	  embed.src = "sound.mp3";
	  embed.loop ="1";
	  document.body.appendChild(embed);}
	  }
		</SCRIPT>
    <BODY onload = "play()">

В ОгнеЛисе и Ослике 7 скрипт сработал (не без замечаний, конечно со стороны IE7).А в Опере 9.02 - ТИШИНА и мертвые с косами стоят :) В чём тут может быть дело? Что скажут гуру в JavaScript кодинге?

ZoNT 30.09.2008 14:16

дело в настройках Оперы?

Mitrandir 30.09.2008 14:54

To ZoNT

Не знаю может и в настройках, хотя с рудиментарным document.write() всё работает на ура во всех трёх браузерах,-
значит наврядли.
2 ALL
Интересная получается картина.
Жду ваших соображений на этот счёт.

Андрей Параничев 30.09.2008 15:10

У оперы, если я не ошибаюсь, были какие-то проблемы с регистром символов при создании элемента, попробуйте так:
var embed = document.createElement("EMBED");

Mitrandir 30.09.2008 16:11

Нет регистр символов увы не помог:(
*******************************
Opera 9.02 сборка 8585,
ОС Windows XP SP 3 RUS - это я так для справки
**************************************
Пожалуйста, протестируйте кому не в напряг оба варианта скрипта,
может это кривизна моей конфы ||рук || мозгов. . Ну, а если
и других будет тоже самое, тогда косяк где-то в поддержке Оперой
объектной модели DOM Level2 так получается.

ZoNT 30.09.2008 16:14

может косяк в поддержке отдельных тэгов?

Андрей Параничев 30.09.2008 16:17

Mitrandir,
У меня работает, правда открывает через quicktimeовский встроенный плеер.

Mitrandir 30.09.2008 16:43

Ага понятно!
Что ОгнеЛису, что опере нужен этот самый apple-плагин для корректного
воспроизведения мультимедиа содержимого из тега
<embed> </embed>, следовательно при таком построении скрипта опера
с плагином почему-то не контачит - в общем, видимо косяк софтовый.
Переинсталим плагин - посмотрим на результат.
Может полегчает. :)

Mitrandir 30.09.2008 17:28

TO ALL
Да нет господа, легче не стало. Дело тут по всей видимости не в плагине,
а действительно в самой Опере, установленной у меня версии 9.02, потому
как статическую вёрстку HTML она воспринимает без проблем и сходу
запускает миниплейер -Так Вот.
**************************
Андрей Параничев,

А какая версия Оперы установлена у Вас?

ZoNT 30.09.2008 17:29

предлагаю забить на бгсаунд.
Если нужно проигрывание музыки в фоне - запусти винамп (или что-нибудь ещё).

Mitrandir 30.09.2008 17:55

Эксперимент - вещь занятная
 
Да ладно, собственно говоря это все мелочи.
Хотел потренироваться, а обнаружил маленький баг:
Народ на форуме взбудоражил маленько:rolleyes:
Я ведь сам скрипт на сайте не заменил DOMовским, а работал
локально c копией, а в онлайне пущай он через document.write()
пашет - из уважения,так сказать к динозаврам веб-серфинга:)
Всем, кто отозвался БОЛЬШОЕ СПАСИБО оперативные
ответы и уделённое время.

P.S. Форум у вас очень толковый - МОЛОДЦЫ, ТАК ДЕРЖАТЬ!!!

magistr_bender 30.09.2008 23:08

использование бэкграундовой музыки относится к дурному тону в вебдизайне

Mitrandir 01.10.2008 08:44

magistr_bender

Я Воль!
Только вот эту страничку надо было сделать быстро и вопрос тона / стиля
уходил на десятый план. Прошу простить за оффтоп.

misha_turist 01.10.2008 11:35

Цитата:

Сообщение от magistr_bender (Сообщение 6515)
использование бэкграундовой музыки относится к дурному тону в вебдизайне

Почему?

Snipe 01.10.2008 11:49

Цитата:

Сообщение от misha_turist (Сообщение 6525)
Почему?

Тут все просто.
Потому что я могу слушать свою музыку и другая мне не нужна. Ну и плюс лишние мегабайты качать приходится (все еще не нужные мне)...

Octane 01.10.2008 13:42

Если все грамотно сделано, то нет ничего страшного в бэкграунд звуках, темболее bgsound сейчас активно применяется в играх на основе Canvas.

Mitrandir 04.10.2008 11:27

Да и собстенно говоря, это была не музыка, а коротенький рассказ о том,
чем занимается одна фирма. Клиент попросил сделать его фоновым звуком.
КЛИЕНТ ВСЕГДА ПРАВ!

magistr_bender 04.10.2008 12:26

аа.. ну тогда простимо.. просто еннавижу когда заходиш на сайт и начинает играть всякая муть... ятакие сайты в блок кидаю чтоб больше не попадаться.. я могу сказать что так делает больше половины точно.. по крайней мере если не в блок кидают то просто закрывают

Mitrandir 05.10.2008 12:43

magistr_bender,

offtop

Ясно, понятно :)
Естественно о вкусах не спорят и если музон нравиться создателю
странички, то это ещё не значит, что он будет нравится всем!
Согласен с Вами на все СТО!

А насчёт траблов в скрипте - это был чисто косяк Оперы 9.02,
сейчас поставил 9.52 все работает в этой версии браузера без шуму и пыли, как часики. Да есть ещё у шведских Оперов призраки в DOM ах, чтоб попугать простых смертных кодеров... :)


Часовой пояс GMT +3, время: 21:14.