Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Прослушка события для аудио-воспроизведения
Форумы портала PHP.SU » Клиентская разработка » JavaScript & VBScript » Прослушка события для аудио-воспроизведения

Страниц (1): [1]
 

1. Romeo4755 - 18 Апреля, 2016 - 15:26:49 - перейти к сообщению
Объясните, пожалуйста, как возникает этот ср*й pause. По уиолчанию он не возникает (хотя написано в мануале, что без автоплея типа уже pause).
Ладно, насильно проигрываю первый файл, второй запускается автоматически, а после него - опять тишина. Или получается, что Прослушка события была присвоена не переменной, а именно ее значению? Как тогда быть?
Спасибо за ваше внимание и сочувствие.
Оговорюсь, Quiry не пользуюсь, просто JS.
CODE (javascript):
скопировать код в буфер обмена
  1. function LastReading2 () {
  2. inaudionum = 0;
  3. var mysoundfile = new Audio (audiogeneralname+0+audiopostfix);
  4. mysoundfile.play();
  5. mysoundfile.addEventListener(
  6.              "pause",
  7.              function() {
  8.                    inaudionum++;
  9.                    mysoundfile = new Audio (audiogeneralname+inaudionum+audiopostfix);
  10.            mysoundfile.play();
  11.                              },
  12.                                         true); //окончание addEventListener
  13.  
  14. }

(Нужно просто чтобы файлы проигрались один за другим, 10 штук)
2. IllusionMH - 18 Апреля, 2016 - 16:57:55 - перейти к сообщению
Romeo4755, да - событие навешивается на объект, а вы потом создаете новый, а на него кто вешать будет?
Либо так же рекурсивно и вешайте обработчик, что не есть гуд, либо сделайте объект который будет навешивать общий обработчик на все создаваемые и потом выбирать следующий для проигрывания.
3. Romeo4755 - 18 Апреля, 2016 - 21:12:28 - перейти к сообщению
Ну да, пришлось HTML плеер тогда использовать:

CODE (javascript):
скопировать код в буфер обмена
  1. var myplayer = document.getElementById('invisibleplayer');
  2. var  inaudionum = 0;
  3.  
  4. function LastReading () {
  5. myplayer.src = audiogeneralname+inaudionum+audiopostfix;
  6. myplayer.play();
  7.    myplayer.addEventListener(
  8.              "pause",
  9.              PlayAudioCycle,
  10.               true); //окончание addEventListener
  11. }
  12. //------------------------------------------------------
  13. function PlayAudioCycle (){
  14.   inaudionum++;
  15.   myplayer.src = audiogeneralname+inaudionum+audiopostfix;
  16.    myplayer.play();
  17.    if (inaudionum == kolsentences-1) {myplayer.removeEventListener("pause", PlayAudioCycle, true);}
  18.  
  19. }
  20.  


Вот так работает. Спасибо вам.

 

Powered by ExBB FM 1.0 RC1