Показать сообщение отдельно
  #13 (permalink)  
Старый 21.05.2012, 17:22
Интересующийся
Отправить личное сообщение для С.Тарасов Посмотреть профиль Найти все сообщения от С.Тарасов
 
Регистрация: 17.06.2009
Сообщений: 16

Сделал, то что хотел. Теперь работает и в chrome.

Решение:

<script  type="text/javascript">

        //-------------------------------------------------------------------------------
        // вспомогательные функции 
        function ie(){if (navigator.appName=='Microsoft Internet Explorer'){return true}else{return false}}

        function $(id) {
	       if (ie()){var idom=document.all(id)}else{var idom=document.getElementById(id)}
	       return idom;
        }


	//-------------------------------------------------------------------------------
        //  функция обработки событий

	function chrome(){
	
		$('sp').addEventListener('ended', function(e){next_sound()});
		$('sp1').addEventListener('ended', function(e){next_sound()});

                 //ниже обязательно назначаем обработку события:
                 //          'canplaythrough' - Скрипт выполняется, когда медиа может быть проиграно до конца,
                 //          без остановок для буферизации
 
		$('sp').addEventListener('canplaythrough', function(e){this.play()});
		$('sp1').addEventListener('canplaythrough', function(e){this.play()});
		
	}

	//-------------------------------------------------------------------------------
        // Воспроизведение очередного файла, название которого находится в массиве sp[nfonem] 
        //
	function speek(){

                   .................
	
                   $(id_speeker).src='sound/'+sp[nfonem]+'.wav';
 
                   .................

	}

	//-------------------------------------------------------------------------------
        //  переход к воспроизведению следующего файла
	function next_sound(){
                  .........
		  sp.length==nfonem ? end_speek() : speek();
                  .........
	}

</script>



В HTML:

<body onload="chrome()">
................................
			<audio id="sp" type="audio/x-wav" controls autoplay>
					Тег audio не поддерживается вашим браузером. 
			</audio>
...............................
				<audio id="sp1" type="audio/x-wav" controls autoplay>
					Тег audio не поддерживается вашим браузером. 
				</audio>
..............................


Т.к. используется два плеера, то для правильно работы в Сhrome, прежде чем запустить другой, в останавливаемом необходимо выполнить: $(id).src="";
иначе опять будет неправильная работа.
Также заметил, что если открыты в один момент две вкладки с плеерами, то в Chrome тоже получается бред.

Последний раз редактировалось С.Тарасов, 21.05.2012 в 18:11.
Ответить с цитированием