2011-12-28 12 views
5

Tengo problemas para reproducir un archivo MP3 usando jQuery Jplayer en Firefox 8. He instalado el último flash para mi navegador y puedo ver que el archivo jplayer.swf se está descargando en la pestaña Flash de Firebug.¿Por qué jPlayer no reproduce mis archivos MP3 en Firefox?

que incluye los siguientes archivos en este orden:

<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.1.min.js"></script> 
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js"></script> 
<script src="https://raw.github.com/happyworm/jPlayer/master/jquery.jplayer/jquery.jplayer.js" type="text/javascript" charset="utf-8"></script> 

Y tengo esto en el DOM que las cargas:

$("#jquery_jplayer").jPlayer({ 
    ready: function() { 
     $(this).jPlayer("setMedia", { 
     mp3: "http://sound26.mp3pk.com/indian/ladiesvsricky/ladiesvsrickybahl01(www.songs.pk).mp3" 

     }); 
    }, 
    swfPath: "http://cloudfactory-transcription.s3.amazonaws.com/javascripts/", 
    supplied: "mp3", 
    volume: 1, 
    wmode:"window", 
    solution: "html,flash" 
    }); 

que tienen este código HTML:

<div id="jquery_jplayer" style="height: 0px"></div> 
      <div class="jp-audio"> 
      <div class="jp-type-single"> 
       <div id="jp_interface_1" class="jp-interface all_rounded_corners"> 
       <ul class="jp-controls"> 
        <li><a href="#" class="jp-play pp" tabindex="1">play</a></li> 
        <li><a href="#" class="jp-pause pp" tabindex="1">pause</a></li> 
        <li><a href="#" class="jp-previous traverse" tabindex="1">Previous</a></li> 
       </ul> 
       <div class="jp-progress" style = "display:none;"> 
        <div class="jp-seek-bar"> 
        <div class="jp-play-bar"></div> 
        </div> 
       </div> 
       </div> 
      </div> 
      </div> 

Y Firefox no puede reproducir el archivo MP3. También puedo ver un objeto oculto que se parece a esto:

<object width="1" height="1" id="jp_flash_0" data="http://cloudfactory-transcription.s3.amazonaws.com/javascripts/Jplayer.swf" type="application/x-shockwave-flash"> <param name="flashvars" value="jQuery=jQuery&amp;id=jquery_jplayer&amp;vol=1&amp;muted=false"> 
<param name="allowscriptaccess" value="always"> 
<param name="bgcolor" value="#000000"> 
<param name="wmode" value="window"> 
</object> 

Respuesta

14

había un par de cosas:

  1. A menos que especifique un explícitas Container Ancestor defecto JPlayer a usar el elemento DOM con el ID de #jp_container_1, que no proporcionó en su HTML
  2. Como FF HTML 5 audio no se puede reproducir archivos MP3 que requiere la última jPlayer SWF a trabajar, su código de constructor jPlayer señaló una vieja versión SWF.

Aquí es un violín con la solución: http://jsfiddle.net/75lb/gdLnT/

El código HTML corregido:

<div id="jquery_jplayer"></div> 
<div id="jp_container_1" class="jp-audio"> 
    <div class="jp-type-single"> 
     <div id="jp_interface_1" class="jp-interface all_rounded_corners"> 
     <ul class="jp-controls"> 
      <li><a href="#" class="jp-play pp" tabindex="1">play</a></li> 
      <li><a href="#" class="jp-pause pp" tabindex="1">pause</a></li> 
      <li><a href="#" class="jp-previous traverse" tabindex="1">Previous</a></li> 
     </ul> 
     <div class="jp-progress" style = "display:none;"> 
      <div class="jp-seek-bar"> 
      <div class="jp-play-bar"></div> 
      </div> 
     </div> 
     </div> 
    </div> 
</div> 

El Javascript corregido:

$("#jquery_jplayer").jPlayer({ 
    ready: function() { 
     $(this).jPlayer("setMedia", { mp3: "http://sound26.mp3pk.com/indian/ladiesvsricky/ladiesvsrickybahl01(www.songs.pk).mp3" }); 
    }, 
    //swfPath: "http://cloudfactory-transcription.s3.amazonaws.com/javascripts/", 
    swfPath: "http://www.jplayer.org/latest/js/Jplayer.swf", 
    supplied: "mp3", 
    volume: 1, 
    wmode:"window", 
    solution: "html,flash", 
}); 
+0

gracias a sus cambios parece funcionar en el violín, pero cuando me trajo el mismo código para mi proyecto didn no funciona Algunos errores se sale diciendo "jPlayer 2.1.0: id = 'jquery_jplayer':!.. Error ha intentado ejecutar comandos de reproducción de medios de comunicación, mientras que no se establece url medios Uso setMedia() para establecer la URL de medios Contexto : jugar " Cualquier idea de por qué este error se está desatando en Firefox. Por cierto intenté pegar todo el código de Iframe de Fiddle pero aún aparece este error. Gracias – Gagan

+0

Pero cuando copié el código de Iframe y empujé esta página estática a heroku, funciona. ¿Alguna idea de por qué está sucediendo esto? ¿Necesita algún tipo de hosting? – Gagan

+0

¡extraño! ¿Es posible publicar un enlace a esta página estática? Lo revisaré ... – Lloyd

2

tuve el mismo problema que hice una JPlayer lista de reproducción de audio y archivos mp3 cargados en ella.

que estaba trabajando en el cromo no en Firefox

i fijo que mediante la adición de solución: Flash

$(document).ready(function(){ 

    var myPlaylist = new jPlayerPlaylist({ 
    jPlayer: "#jquery_jplayer_1", 
    cssSelectorAncestor: "#jp_container_1" 
    }, [ 
    { 
     title:"Cro Magnon Man", 
     artist:"miaow", 
     mp3:"http://www.jplayer.org/audio/mp3/TSP-01-Cro_magnon_man.mp3", 
     oga:"http://www.jplayer.org/audio/ogg/TSP-01-Cro_magnon_man.ogg" 
    } 

    ], { 
    playlistOptions: { 
    enableRemoveControls: true 
    }, 
     swfPath: "js", 
    supplied: "mp3", 
    wmode: "window", 
    solution: "flash", 
    }); 

    $("#jplayer_inspector_1").jPlayerInspector({jPlayer:$("#jquery_jplayer_1")}); 
Cuestiones relacionadas