Foros del Web » Programando para Internet » Javascript »

Definir el tamaño de un Flash en documento HTML

Estas en el tema de Definir el tamaño de un Flash en documento HTML en el foro de Javascript en Foros del Web. Alguien que sepa programar me podría ayudar a crear un script con el que en función de la resolución del monitor el tamaño de un ...
  #1 (permalink)  
Antiguo 16/09/2008, 13:01
 
Fecha de Ingreso: agosto-2008
Mensajes: 89
Antigüedad: 15 años, 8 meses
Puntos: 1
Definir el tamaño de un Flash en documento HTML

Alguien que sepa programar me podría ayudar a crear un script con el que en función de la resolución del monitor el tamaño de un <object> quede determinado.

Muchas gracias
  #2 (permalink)  
Antiguo 16/09/2008, 13:09
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
De acuerdo Respuesta: Definir el tamaño de un Flash en documento HTML

No lo he probado, pero supongo que asignándole un id podrás cambiar su width y height.

P.S.: La resolución la obtienes con screen.width y screen.height.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 17/09/2008, 02:05
 
Fecha de Ingreso: agosto-2008
Mensajes: 89
Antigüedad: 15 años, 8 meses
Puntos: 1
Respuesta: Definir el tamaño de un Flash en documento HTML

Ummm lo he intentado pero no consigo terminarlo. Me falla un comando que no se. Te pongo el codigo que tengo hecho:

<script language="javascript">
resolucion = screen.width;

if ((resolucion == '1280') || (resolucion == '1152')) {
/*Aquí es donde deberia de poner que el width y height del flash cambiase, pero no se como.
</script>

Sorry, pero es que soy un novato con el Javascript. Ya se que en vez de preguntar debería buscar en manuales y aprender Javascript, pero es que tengo que terminar esta web y la quiero olvidarme de ella, y cuando tenga tiempo aprendere Javascript (es mi proposito para después del verano..xD)

Gracias
  #4 (permalink)  
Antiguo 17/09/2008, 06:25
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Pregunta Respuesta: Definir el tamaño de un Flash en documento HTML

Una pregunta, ¿por qué mejor no le pones un porcentaje en el width y el height?. Así se ajustará a la resolución automáticamente .
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 17/09/2008, 06:48
 
Fecha de Ingreso: agosto-2008
Mensajes: 89
Antigüedad: 15 años, 8 meses
Puntos: 1
Respuesta: Definir el tamaño de un Flash en documento HTML

Esa es la solucion "chapuza" que tengo prevista. El problema es que w¡el width si que lo puedo poner en porcentaje, porque el ancho siempre es el mismo, pero la altura no siempre es la misma. En funcion de cada resolución el texto sera mas largo o corto, y aunque mas o menos siempre sea lo mismo. Entonces mi problema es que el width si que lo puedo poner en porcentaje pero el height no. Por ello quería hacer esto.
Thanks
  #6 (permalink)  
Antiguo 17/09/2008, 07:04
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
De acuerdo Respuesta: Definir el tamaño de un Flash en documento HTML

En ese caso es como te dije. Por ejemplo:
Código HTML:
<object id="obj"></object> 
Código javascript:
Ver original
  1. document.getElementById("obj").width = "300";
  2. document.getElementById("obj").height = "300";
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #7 (permalink)  
Antiguo 17/09/2008, 11:55
 
Fecha de Ingreso: agosto-2008
Mensajes: 89
Antigüedad: 15 años, 8 meses
Puntos: 1
Respuesta: Definir el tamaño de un Flash en documento HTML

Muchas Gracias por tu ayuda David...a ver si también me puedes sacar de esta..xD

Este es el código que he hecho, y el problema es que con Internet Explorer 6 el flash recurre a el valor else, y no se fija en ninguna de las variables..

Código:
       <div id="ESD">
       <object  id="ne" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" align="middle" title="Diesel e+">
<param name="movie" value="Files/Diesel.swf" />
            <param name="quality" value="high" />
            <embed src="Files/Diesel.swf" align="middle" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash"></embed>
          </object>
      <script type="text/javascript">
	  resolucion = screen.width;

if (resolucion == '1280') {
	document.getElementById("ne").width = "650";
	document.getElementById("ne").height = "300";
}

if (resolucion == '1152') {
	document.getElementById("ne").width = "650";
	document.getElementById("ne").height = "300";
}

if (resolucion == '1024') {
	document.getElementById("ne").width = "650";
	document.getElementById("ne").height = "300";
}

if (resolucion == '800') {
	document.getElementById("ne").width = "650";
	document.getElementById("ne").height = "300";
}

else {
	document.getElementById("ne").width = "300";
	document.getElementById("ne").height = "100";
}
</script>
          </div>
Por cierto, lo de los valores es solo ahora que lo tengo así de forma temporal para distinguir si funciona o no..Después ya lo cambiare (cada resolución llevara valores distintos).
  #8 (permalink)  
Antiguo 17/09/2008, 12:00
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: Definir el tamaño de un Flash en documento HTML

No tengo IE6. ¿Has probado con poner un alert(resolucion) para ver qué valor tiene?. Otra cosa, no entiendo para qué estás poniendo varias resoluciones cuando el tamaño que asignas es el mismo .
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #9 (permalink)  
Antiguo 18/09/2008, 09:10
 
Fecha de Ingreso: agosto-2008
Mensajes: 89
Antigüedad: 15 años, 8 meses
Puntos: 1
Respuesta: Definir el tamaño de un Flash en documento HTML

Como tu me has dicho he probado poniendo alert(resolucion) y he llegado a una conclusión: no me hace ni caso!!!
Creo que el problema tiene que estar en el HTML, porque si no no entiendo que no responda a ningún parametro y salte automaticamente al valor "else". Por favor te pido que le des un último vistazo para buscar un fallo. Gracias
Código HTML:
<object  id="ne" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" align="middle" title="Diesel e+">
<param name="movie" value="Files/Diesel.swf" />
            <param name="quality" value="high" />
            <embed src="Files/Diesel.swf" align="middle" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash"></embed>
          </object>
      <script type="text/javascript">
	  resolucion = screen.width;
	   alert(resolucion);
	 
if (resolucion >= '1280') {
	document.getElementById("ne").width = "800";
	document.getElementById("ne").height = "300";
}

if (resolucion == '1152') {
	document.getElementById("ne").width = "650";
	document.getElementById("ne").height = "300";
}

if (resolucion == '1024') {
	document.getElementById("ne").width = "100";
	document.getElementById("ne").height = "300";
}

if (resolucion == '800') {
	document.getElementById("ne").width = "500";
	document.getElementById("ne").height = "120";
}

else {
	document.getElementById("ne").width = "300";
	document.getElementById("ne").height = "100";
}
</script> 
Por cierto también me pasa en Safari y otros navegadores. Alguna sugerencia?

Última edición por kamita; 18/09/2008 a las 09:17
  #10 (permalink)  
Antiguo 18/09/2008, 09:47
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Pregunta Respuesta: Definir el tamaño de un Flash en documento HTML

¿Qué sale en el alert?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #11 (permalink)  
Antiguo 18/09/2008, 09:58
 
Fecha de Ingreso: agosto-2008
Mensajes: 89
Antigüedad: 15 años, 8 meses
Puntos: 1
Respuesta: Definir el tamaño de un Flash en documento HTML

En el alert me pone la resolución (solo me pone el ancho de la resolución).
En función de la resolucion que tenga me pone valores distintos (1152, 1024, 1680, 1280). Los valores siempre son correctos.
  #12 (permalink)  
Antiguo 18/09/2008, 10:03
 
Fecha de Ingreso: agosto-2008
Mensajes: 89
Antigüedad: 15 años, 8 meses
Puntos: 1
Respuesta: Definir el tamaño de un Flash en documento HTML

Comprobado, me hace siempre lo mismo utilice el navegador que utilice. Esta probado en Firefox (Windows), Firefox (Mac), Internet Explorer, Safari (Mac).
  #13 (permalink)  
Antiguo 18/09/2008, 10:06
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: Definir el tamaño de un Flash en documento HTML

Es que si te fijas, tu if está mal estructurado, pues solo no entrará en el else si la resolución es 800. En todos los otros casos entrará en el else, si no quieres que eso suceda debes anidar los if. (O mejor aún hacer un switch).
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #14 (permalink)  
Antiguo 18/09/2008, 10:55
 
Fecha de Ingreso: agosto-2008
Mensajes: 89
Antigüedad: 15 años, 8 meses
Puntos: 1
Respuesta: Definir el tamaño de un Flash en documento HTML

Es cierto lo que dices! He estado buscando en internet y por eso no funcionaba. El problema es que ahora no se como se anida (soy un novato en el javascript) y en internet no he encontrado grandes cosas sobre lo de anidar. Por favor me podrías hacer un ejemplo con los dos primeros??? Si no puedes da igual..supongo que con el tiempo lo acabaré sacando. Muchas gracias por todo, me has solucionado un gran problema con mi web.
  #15 (permalink)  
Antiguo 18/09/2008, 10:58
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
De acuerdo Respuesta: Definir el tamaño de un Flash en documento HTML

Por ejemplo:
Código javascript:
Ver original
  1. if (condicion) {
  2.      /* Instrucciones si condicion es verdadera */
  3. }
  4. if (condicion2) {
  5.      /* Instrucciones si condicion2 es verdadera.
  6.     Pero en este caso, ambas condiciones serán evaluadas /*
  7. }
Código javascript:
Ver original
  1. if (condicion) {
  2.    /* Instrucciones si condicion es verdadera */
  3. } else {
  4.    if (condicion2) {
  5.        /*Instrucciones si condicion2 es verdadera
  6.        Esto es una condición anidada, solo se ejecutará si condicion es falso */
  7.    }
  8. }
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #16 (permalink)  
Antiguo 18/09/2008, 13:24
 
Fecha de Ingreso: agosto-2008
Mensajes: 89
Antigüedad: 15 años, 8 meses
Puntos: 1
Respuesta: Definir el tamaño de un Flash en documento HTML

Muchas gracias, pero tengo una pregunta. Como se haría para poner un tercer valor anidado. Se me ocurren dos formas.
1. Meter el tercer If dentro del else que ya esta abierto.
2. Crear otro else.
Gracias!!!
  #17 (permalink)  
Antiguo 18/09/2008, 13:26
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
De acuerdo Respuesta: Definir el tamaño de un Flash en documento HTML

Debes crear otro else para que se anide nuevamente, aunque como te había dicho en el principio creo mejor hacer un switch.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #18 (permalink)  
Antiguo 19/09/2008, 09:51
 
Fecha de Ingreso: agosto-2008
Mensajes: 89
Antigüedad: 15 años, 8 meses
Puntos: 1
Respuesta: Definir el tamaño de un Flash en documento HTML

David te refieres a esto??:
Código:
      <script type="text/javascript">
	  resolucion = screen.width;
	  alert(resolucion);
	 	 
if (resolucion >= '1280') {
	document.getElementById("ne").width = "1200px";
	document.getElementById("ne").height = "150 px";
}

else { if (resolucion == '1152') {
	document.getElementById("ne").width = "800 px";
	document.getElementById("ne").height = "300 px";
}
}

else { if (resolucion == '1024') {
	document.getElementById("ne").width = "800 px";
	document.getElementById("ne").height = "300 px";
}
}

else { if (resolucion <= '800') {
	document.getElementById("ne").width = "800 px";
	document.getElementById("ne").height = "120 px";
}
}

</script>
Si está bien no funciona. Ni si quiera me da la alerta con la resolución!!
  #19 (permalink)  
Antiguo 19/09/2008, 09:59
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: Definir el tamaño de un Flash en documento HTML

La estructura de tus condiciones es incorrecta, fíjate cómo estás poniendo:
Código javascript:
Ver original
  1. SI (resolucion >= '1280') {
  2.   /* Código */
  3. } SI NO {
  4.   SI (resolucion == '1152') {
  5.      /* Código */
  6.   } /* El else debería ir aquí, ya que es la negación a ESTA condición */
  7. } /* Aquí ya cerramos todas las condiciones */
  8. /* Mientras que aquí volvemos a abrir un else lo cual no tiene mucho sentido */
  9. SI NO { if (resolucion == '1024') {
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #20 (permalink)  
Antiguo 20/09/2008, 16:56
 
Fecha de Ingreso: agosto-2008
Mensajes: 89
Antigüedad: 15 años, 8 meses
Puntos: 1
Respuesta: Definir el tamaño de un Flash en documento HTML

Esto empieza a ser una pesadilla. Desde luego que me voy a poner a estudiar Javascript porque si no esto no hay forma de hacerlo!!! Yo pensaba que ya funcionaba todo correctamente, hasta que cambio la resolución del monitor para probarlo y me doy cuenta de que no siempre funciona!
El código es este:
Código:
      <script type="text/javascript">
	  resolucion = screen.width;
	  alert(resolucion);
	 	 
if (resolucion >= '1280') {
	document.getElementById("ne").width = "1000px";
	document.getElementById("ne").height = "150 px";
}

else { if (resolucion == '1152') {
	document.getElementById("ne").width = "800 px";
	document.getElementById("ne").height = "300 px";
}
else { if (resolucion == '1024') {
	document.getElementById("ne").width = "800 px";
	document.getElementById("ne").height = "300 px";
}
else { if (resolucion <= '800') {
	document.getElementById("ne").width = "800 px";
	document.getElementById("ne").height = "120 px";
}
}
}
}
</script>
El tema es que cuando la resolución es de 1280 o mayor funciona correctamente, pero cuando es inferior, no lo reconoce. Ummm se que será el mismo fallo tonto, pero es que para mi así es como tiene lógica. ¿Cómo sería???
Gracias...y siento ser tan pesado!
  #21 (permalink)  
Antiguo 20/09/2008, 18:25
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
De acuerdo Respuesta: Definir el tamaño de un Flash en documento HTML

Prueba usando style.height y style.width, además de colocar el px sin espacio.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
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:17.