Foros del Web » Programando para Internet » Javascript »

porqué no funciona el código? ayuda

Estas en el tema de porqué no funciona el código? ayuda en el foro de Javascript en Foros del Web. Saludos Encontre este script, que cuando pasas el raton sobre la imagen, se desplega una imagen más grande: <style type="text/css"> <!-- #main li { margin-left: ...
  #1 (permalink)  
Antiguo 14/12/2007, 11:06
 
Fecha de Ingreso: diciembre-2007
Mensajes: 3
Antigüedad: 16 años, 4 meses
Puntos: 0
porqué no funciona el código? ayuda

Saludos

Encontre este script, que cuando pasas el raton sobre la imagen, se desplega una imagen más grande:

<style type="text/css">
<!--
#main li { margin-left: -2.5em; list-style: square inside; }
#indices { width: 438px; }
#portada_impresa { display: none; z-index: auto; left: 130px; top: 60px; position: absolute; border: thick solid black; }
-->
</style>
<script type="text/JavaScript">
<!--
function mostrar_portada() {
if (document.getElementById)
document.getElementById("portada_impresa").style.d isplay = "block";
}

function ocultar_portada() {
if (document.getElementById)
document.getElementById("portada_impresa").style.d isplay = "none";
}
-->
</script>

<img src="" alt="" title="" width="" border="" onmouseover="mostrar_portada();" onmouseout="ocultar_portada();">

<img id="portada_impresa" src="" alt="" width="" border="">

_____________________

Entonces quise aplicarlo para todas las imagenes que suba a mi web. Pero resulta que el mayor impedimento es la ID de la imagen: "portada_impresa". Mi web usa PHP. inserte una nueva variable para cada id de cada imagen: $imgname. Asi cada vez que subo una nueva imagen, me da una diferente ID. Esto funciona muy bien. El problema que tengo es que el script no reconoce la variable de PHP.

Ya estuve revisando distinta información, pero aun no consigo que el script funcione. este es:

<style type="text/css">
<!--
#main li { margin-left: -2.5em; list-style: square inside; }
#indices { width: 438px; }
#imgname { display: none; z-index: auto; left: 130px; top: 60px; position: absolute; border: thick solid black; }
-->
</style>

<script type="text/JavaScript">

var imgname = imgname("<?php echo '$imgname'; ?>");

function mostrar_portada() {
if (document.getElementById)
document.getElementById('imgname').style.display = "block";
}
function ocultar_portada() {
if (document.getElementById)
document.getElementById('imgname').style.display = "none";
}

</script>

<img id="$imgname" src="" alt="" width="" border="">

<img src="" alt="" title="" width="" border="" onmouseover="mostrar_portada();" onmouseout="ocultar_portada();">

_________

estoy aprendiendo PHP y no se mucho de javascript. Alguien podría ayudarme.

Muchas Gracias

Imox
  #2 (permalink)  
Antiguo 14/12/2007, 13:35
Avatar de agressor  
Fecha de Ingreso: noviembre-2007
Ubicación: Knocking the Death Door..
Mensajes: 368
Antigüedad: 16 años, 5 meses
Puntos: 3
Re: porqué no funciona el código? ayuda

Bueno mira lo primero el ID=$ no lleva este caracter...en primer lugar en segundo no estoy seguro pero creo que no es block es NONE pero no se probalo

ahora tu funcion deberia quedar algo asi

<img src="" id="imgname" alt="" title="" width="" border="" onmouseover="mostrar_portada();" onmouseout="ocultar_portada();">

Probalo luego me contas..
  #3 (permalink)  
Antiguo 14/12/2007, 13:53
Avatar de agressor  
Fecha de Ingreso: noviembre-2007
Ubicación: Knocking the Death Door..
Mensajes: 368
Antigüedad: 16 años, 5 meses
Puntos: 3
De acuerdo Re: porqué no funciona el código? ayuda

Aqui esta mira este codigo a mi me funcion tal y como lo queres asi que espero te sirva lo tenias un problema con el ID nada mas..

<style type="text/css">
<!--
#main li { margin-left: -2.5em; list-style: square inside; }
#indices { width: 438px; }
#portada_impresa { display: none; z-index: auto; left: 130px; top: 60px; position: absolute; border: thick solid black; }
-->
</style>
<script type="text/JavaScript">
<!--
function mostrar_portada() {
if (document.getElementById)
document.getElementById("portada_impresa").style.d isplay = "block";
}

function ocultar_portada() {
if (document.getElementById)
document.getElementById("portada_impresa").style.d isplay = "none";
}
-->
</script>

<img src="imgname" alt="" width="435" height="205" border="" title="" onMouseOver="mostrar_portada();" onMouseOut="ocultar_portada();">

<img src="imgname" alt="" width="450" height="338" border="" id="portada_impresa" onMouseOver="mostrar_portada();" onMouseOut="ocultar_portada();">

le coloque las 2 funciones ocultar y mostrar tambien a la imagen que muestras para que mientras el mouse este dentro de la imagen mostrada tambien se muestre portada.. y tambien te quita dolores de cabeza por que si tiene fondo transparente te crearia unos rollos con que no se muestra ya que no esta en la imagen y cosas asi..

Última edición por agressor; 14/12/2007 a las 14:05 Razón: Falta una explicacion
  #4 (permalink)  
Antiguo 15/12/2007, 19:00
 
Fecha de Ingreso: diciembre-2007
Mensajes: 3
Antigüedad: 16 años, 4 meses
Puntos: 0
variable de php a javascript

Gracias, lo que escribes funciona, pero no es eso lo que quiero. Mira la onda es que no puede haber dos imágenes con el mismo ID="portada_impresa". Manualmente se puede así: portada_impresa1, portada_impresa2, portada_impresa3.... pero yo quiero que esto funcione automáticamente. te explico.

el blog que uso esta en php. En la base de datos agregue un nuevo valor $imgname. Cada vez que agrego una nueva imagen al servidor, automáticamente se le asigna una ID, que es el nombre de la imagen. pj. sol.jpg, En eso como te digo no hay ningún problema. Cuando le das publicar articulo, en la página principal aparece el titulo, el autor, la fecha, la categoría y la imagen con una id asignada. Aqui es donde entra la cuestion del script pues éste no reconoce de manera automática el valor de la variable $imgname. me entiendes. como no la reconoce el script no funciona.

Entonces mi pregunta era cómo hacer para que el script reconozca el valor asignado: la ID de la imagen. Pero además que funcione con varias imagenes a la vez: var imgname = imgname("<?php echo '$imgname'; ?>");

checa bien el script:

<style type="text/css">
<!--
#main li { margin-left: -2.5em; list-style: square inside; }
#indices { width: 438px; }
#imgname { display: none; z-index: auto; left: 130px; top: 60px; position: absolute; border: thick solid black; }
-->
</style>

<script type="text/JavaScript">

var imgname = imgname("<?php echo '$imgname'; ?>");

function mostrar_portada() {
if (document.getElementById)
document.getElementById('imgname').style.display = "block";
}
function ocultar_portada() {
if (document.getElementById)
document.getElementById('imgname').style.display = "none";
}

</script>

<img id="$imgname" src="" alt="" width="" border="">

<img src="" alt="" title="" width="" border="" onmouseover="mostrar_portada();" onmouseout="ocultar_portada();">


cómo ves?

gracias de nuevo.
  #5 (permalink)  
Antiguo 15/12/2007, 19:38
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 17 años, 2 meses
Puntos: 88
Re: porqué no funciona el código? ayuda

por que no simplemente dejas tal cual esta tu codigo, pones autoincremente en el nombre imgname1, imgname2, etc....

y cuando lo recibes en la funcion, eliminas la ultima letra(autoincremento), y aplicas la funcion???
__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
  #6 (permalink)  
Antiguo 16/12/2007, 20:24
 
Fecha de Ingreso: diciembre-2007
Mensajes: 3
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: porqué no funciona el código? ya tengo avances

tengo algunos avances:

<style type="text/css">
<!--
#main li { margin-left: -2.5em; list-style: square inside; }
#indices { width: 438px; }
#<?php the_imgname(); ?> { display: none; z-index: auto; left: 130px; top: 60px; position: absolute; border: thick solid black; }
-->
</style>
<form name="aaa" method="POST">


<script type="text/JavaScript">
<!--
function mostrar_portada() {
if (document.getElementById)
document.getElementById("<?php the_imgname(); ?>").style.display = "block";
}
function ocultar_portada() {
if (document.getElementById)
document.getElementById("<?php the_imgname(); ?>").style.display = "none";
}
-->
</script>
</form>


Ya reconoce las variables, pero no se, simplemente pasa algo que hace que marca error. detectan algo.

...oye Shiryu_Libra y me puedes decir cómo?

sale
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 07:14.