Foros del Web » Programando para Internet » Javascript »

Detener animacion flash SWF con enlace?

Estas en el tema de Detener animacion flash SWF con enlace? en el foro de Javascript en Foros del Web. Hola gente, tengo una pagina donde muestro animaciones flash en SWF. El caso es que quisiera saber si puedo parar la animacion con un enlace. ...
  #1 (permalink)  
Antiguo 29/09/2009, 16:08
Avatar de Joystickoso  
Fecha de Ingreso: enero-2009
Mensajes: 127
Antigüedad: 15 años, 3 meses
Puntos: 3
Pregunta Detener animacion flash SWF con enlace?

Hola gente, tengo una pagina donde muestro animaciones flash en SWF.
El caso es que quisiera saber si puedo parar la animacion con un enlace.
Buscando encontre una pagina que decia que se hacia con javascript pero no me funciona.
El codigo de la animacion y de los enlaces de animaflash.php entre otras cosas sería:
Código HTML:
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="400" height="300" id="animacion">
          <param name="movie" value="<? echo $row_Recordset3['rutarchivo'];?>">
          <param name="quality" value="autohigh"><param name="LOOP" value="false">
          <embed src="<? echo $row_Recordset3['rutarchivo'];?>" width="400" height="300" loop="false" quality="autohigh"
      pluginspage="http://www.macromedia.com/go/getflashplayer"
      type="application/x-shockwave-flash" id="animacion"></embed>
        </object>
	<ul id="controles-1">
    <li><a href="#">Iniciar reproducción</a></li>
    <li><a href="#">Pausar reproducción</a></li>
</ul> 
Y el Javascript pararflash.js:
Código:
// JavaScript Document
var control1 = document.getElementById('controles-1').getElementsByTagName('a');
control1[0].onclick = function(){
    document.getElementById('animacion').Play();
    return false;
}
control1[1].onclick = function(){
    document.getElementById('animacion').StopPlay();
    return false;
}
Por supuesto que en animaflash.php meti bien el script con <script src="..."></script>
La verdad es que no tengo practicamente ni idea de javascript, asi que a ver si me podeis ayudar.
Esto se puede hacer de verdad o es que hago algo mal?
Gracias y Salud'Os!!
  #2 (permalink)  
Antiguo 29/09/2009, 19:13
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Detener animacion flash SWF con enlace?

recuerdo anteriormente haber ayudado alguien con scripting en flash. sucedia que le funcionaba en iexplorer7 pero no en firefox. asumo que tu caso debe ser el mismo. por alguna razon que todavia no logro entender, firefox carga <embed> en lugar de <object>. entonces, el codigo hace referencia a <object> y genera error.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 30/09/2009, 11:11
Avatar de Joystickoso  
Fecha de Ingreso: enero-2009
Mensajes: 127
Antigüedad: 15 años, 3 meses
Puntos: 3
Respuesta: Detener animacion flash SWF con enlace?

Entiendo, por eso me funcionaba el ejemplo que lei y no lo mio, porque en el ejemplo era un <object> sin <embed>.
Al final lo he hecho de otra forma, aunque no lo he hecho con javascript y no procede en esta parte del foro me explicaré por si a alguien le vale.
El inicio de la reproduccion del archivo lo hago pinchando en el enlace de cada archivo que mete una variable URL, y el registro de la base de datos lo tengo filtrado para que muestre el registro que tenga el id igual a a la variable URL ($_GET['idanim']).
Así que he puesto debajo un enlace llamado Parar con idanim=0 y así se para.
Este es el registro de los enlaces:(como se ve hecho con dreamweaver)
Código PHP:
$colname_Recordset3 "1";
if (isset(
$_GET['idanim'])) {
  
$colname_Recordset3 = (get_magic_quotes_gpc()) ? $_GET['idanim'] : addslashes($_GET['idanim']);
}
mysql_select_db($database_comentarios$comentarios);
$query_Recordset3 sprintf("SELECT * FROM animaflash WHERE id = %s"$colname_Recordset3);
$Recordset3 mysql_query($query_Recordset3$comentarios) or die(mysql_error());
$row_Recordset3 mysql_fetch_assoc($Recordset3);
$totalRows_Recordset3 mysql_num_rows($Recordset3); 
Esta la tabla con los enlaces:
Código PHP:
$numcol=2;
$x=0;
echo 
'<table width="100%" height="14"  border="1" align="center" cellpadding="0" cellspacing="0" style="font:Verdana, Arial, Helvetica, sans-serif; font-size:12px">';
do {
if (
$x%$numcol==0) {echo '<tr height="14"><td height="14" align="center" valign="middle"><a href="animaflash.php?idanim='.$row_Recordset2['id'].'">'.$row_Recordset2['titulo'].'</a></td>';} 
elseif (
$x%$numcol==$numcol-1) {echo '<td height="14" align="center" valign="middle"><a href="animaflash.php?idanim='.$row_Recordset2['id'].'">'.$row_Recordset2['titulo'].'</a></td></tr>';} 
else {echo 
'<td height="14" align="center" valign="middle"><a href="animaflash.php?idanim='.$row_Recordset2['id'].'">'.$row_Recordset2['titulo'].'</a></td>';}  $x++;}
while (
$row_Recordset2=mysql_fetch_array($Recordset2));
echo 
'</table>'
Y la animacion y el enlace de Parar animacion:
Código HTML:
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" name="animacion" width="400" height="300" id="animacion" >
          <param name="movie" value="<? echo $row_Recordset3['rutarchivo'];?>">
          <param name="quality" value="autohigh"><param name="LOOP" value="false">
          <embed src="<? echo $row_Recordset3['rutarchivo'];?>" width="400" height="300" loop="false" quality="autohigh"
      pluginspage="http://www.macromedia.com/go/getflashplayer"
      type="application/x-shockwave-flash" name="animacion" id="animacion"></embed>
        </object><p><br>
<a href="animaflash.php?idanim=0">Parar reproducción</a> 
Gracias y Salud'Os!!!!

Última edición por Joystickoso; 30/09/2009 a las 11:17
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:11.