2014-02-19 3 views
1

Как и в названии, у меня есть скрипт, который работает в Chrome и Firefox, но не в IE. Пара уникальных вещей для этой реализации: 1) Несколько версий jQuery (с использованием noConflict), и 2) большинство активов, используемых jPlayer, генерируются через скрипт.jPlayer - событие «ready» не срабатывает в IE 7

Разметка

<a class="audio-trigger" data-type="mp3" data-loop="false" href="/path.to.mp3">Listen</a> 

JS (внутри document.ready функции)

// Initialize audio 
if ($('.audio-trigger').length) { 

    //get jQuery 1.10.2 for jPlayer 
    $.getScript('/rsc/js/libs/jquery-1.10.2.min.js', function() { 
     $.getScript('/rsc/js/libs/jplayer-2.5.0.min.js', function() { 

      //jPlayer noConflict option is restricted to strings that contain the term jQuery 
      var jQuery1102 = jQuery.noConflict(true); 
      console.log('jQuery ' + $.fn.jquery + ' has been restored to global, and jQuery ' + jQuery1102.fn.jquery + ' has been preserved.'); 

      //create pause button and audio container 
      var pause = '<a class="audio-pause" href="javascript:;">Pause | <span class="audio-currentTime"></span>/<span class="audio-duration"></span></a><div class="audio-play-area"></div>'; 
      jQuery1102('.audio-trigger').after(pause); 

      //get audio link 
      var audioLink = jQuery1102('.audio-trigger').attr('href'); 

      //Init jPlayer 
      jQuery1102('.audio-play-area').jPlayer({ 
       ready: function() { 
        jQuery1102(this).jPlayer('setMedia', { 
         mp3: audioLink 
        }); 
       }, 
       swfPath: '/rsc/js/libs', 
       supplied: jQuery1102('.audio-trigger').data('type'), 
       cssSelectorAncestor: '', 
       cssSelector: { 
        play: '.audio-trigger', 
        pause: '.audio-pause', 
        currentTime: '.audio-currentTime', 
        duration: '.audio-duration' 
       }, 
       noConflict: 'jQuery1102', 
       loop: jQuery1102('.audio-trigger').data('loop'), 
       errorAlerts: true 
      }); 
     }); 
    }); 
} 

и, наконец, когда я нажимаю на спусковой крючок аудио ... Ошибка

Attempt to issue media playback commands, while no media url is set. 
Use setMedia() to set the media URL 
Context: play 

Мое имя пути .swf на 100% точнее и в браузере не было других ошибок.

Заранее благодарим за помощь!

ответ

0

Я обнаружил, что .swf на сервере устарел. Обновление этого исправлено. Womp womp.

Смежные вопросы