Pregunta

¿Es posible comenzar a reproducir un archivo dentro de un reproductor flash utilizando código javascript?Si es así ¿cómo lo haría?

¿Fue útil?

Solución

Intenta usar objeto swf, puedes hacer que cualquier función de ActionScript sea visible para JavaScript usando ExternalInterface y declararlos en javascript.Entonces puedes activar la función ActionScript con play() (o cualquier otro código que desee) de su código javascript.

Aquí hay un ejemplo:

Guión de acción:

import flash.external.ExternalInterface;

ExternalInterface.addCallback( "methodName", this, method );
function method() {
   trace("called from javascript");
}

JavaScript:

function callAS() {
   swf.methodName(); 
}

Donde nombremétodo es el identificador que js usa para llamar al método desde actionscript.

Otros consejos

Tome un vistazo a SWFObject . Hay una gran cantidad de ejemplos sobre la forma de lograrlo.

Si lo es. Puede hacer referencia a los objetos de película de destello de js y controlar el componente flash en una página. Por desgracia, la forma de hacerlo no es portable a través de los navegadores. Ver esto:

http://www.permadi.com/tutorial/flashjscommand/

Si tiene que hacerlo desde Javascript considerar mover de un tirón en el parámetro de reproducción automática de este modo:

Suponiendo que consiguió el padre del objeto / embed (vidParent):

if( document.all) {
  // toggle the object code (IE)
  vidParent.innerHTML = vidParent.innerHTML.replace(/0\" name=\"autoplay/gi,'1\" name=\"autoplay');
} else {
  // toggle the embed code
  vidParent.innerHTML = vidParent.innerHTML.replace(/autoplay=0/gi,'autoplay=1'); 
}

Esto se volverá a cargar el flash con autoplay = 1 (este ejemplo funciona con el reproductor de YouTube).

he tenido que hacer esto para hacer un poco de seguimiento en las reproducciones de vídeo.

Se sugiere un método interesante aquí: http://www.permadi.com/tutorial/flashjscommand/

A mí me funciona!

La idea es conseguir embed objeto utilizando

function getFlashMovieObject(movieName)
{
  if (window.document[movieName]) 
  {
      return window.document[movieName];
  }
  if (navigator.appName.indexOf("Microsoft Internet")==-1)
  {
    if (document.embeds && document.embeds[movieName])
      return document.embeds[movieName]; 
  }
  else // if (navigator.appName.indexOf("Microsoft Internet")!=-1)
  {
    return document.getElementById(movieName);
  }
}

y para llamar a su método Play() después.

getFlashMovieObject('MyMovie').Play()

Un par de otros métodos son compatibles, ver el enlace anterior.

Puede llamar a cualquier función personalizada en Flash en JavaScript, que requiere codificación de ambos Javascript y Flash.

Vea aquí algunos ejemplos: http://kb.adobe.com /selfservice/viewContent.do?externalId=tn_15683 .

Además, el uso SWFObject ayuda mucho cuando se trata de flash desde JavaScript.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top