onclick setAttribute href de un src

Estoy trabajando en un proyecto para intercambiar imágenes en miniatura para ampliar la imagen cuando la imagen es seleccionada y funciona correcto, sin embargo, ahora me gustaría que los usuarios finales a ser capaz de hacer clic en la imagen grande para mostrar en jquery.lightbox-0.5. El problema es que después de seleccionar la miniatura de la imagen cargada no tiene un href. Tenía la esperanza de que me podría pasar las imágenes src a href mediante el evento onclick, pero no puedo averiguar cómo hacer este trabajo.

Aquí está mi código

<script type="text/javascript">
function swaphref(image) {

document.getElementById('image').setAttribute('href', this.src);
//window.alert(document.getElementById('image').src);
}
</script>

<body>
<div class="productimage" id="gallery"><a onclick="swaphref(this)"><img id="image" img src="product_images/<?php echo $targetID; ?>/<?php echo $targetID; ?>.jpg" width="253" height="378" border="0" /></a></div>

</body>
  • ¿Por qué desea establecer el atributo «href» de un elemento «img»? El interesante es el atributo «src», no «href», a menos que me estoy perdiendo algo sobre el lightbox plugin.
  • debido a que el onclick es en el un, «este» se refieren a un elemento no a la imagen.
  • Si el siguiente trabajo….
  • Si el siguiente trabajo…. <script type=»text/javascript»> la función swaphref(imagen) { document.getElementById(‘imagen’).setAttribute(‘src’, este.href); ventana.alert(document.getElementById(‘imagen’).src); ventana.alert(document.getElementById(‘imagen’).href); } </script> <body> <a ><img src=»product_images/1.jpg» name=»imagen» width=»340″ height=»480″ id=»imagen» /></a> <p><a href=»href.php» onclick=»swaphref(este)»>agregar href</a></p> </body> me indefinido en el href alterar, ¿por qué?
InformationsquelleAutor Jason | 2011-06-13

4 Kommentare

  1. 3

    Aceptar. Tengo este trabajo. La ‘a’ fue la falta de una identificación.

    Aquí está el código…..

    <script type="text/javascript">
    function swaphref(imagehref) {
    
    document.getElementById('imagehref').setAttribute('href', image.src);
    
    //window.alert(document.getElementById('image').src);
    //window.alert(document.getElementById('imagehref').href);
    }
    </script>
    
    <body>
    <div class="productimage" id="gallery"><a href="#" id="imagehref"     onclick="swaphref(this)"><img id="image" img src="product_images/<?php echo $targetID; ?  >/<?php echo $targetID; ?>.jpg" width="253" height="378" border="0" /></a></div>
    
    </body>

    Gracias a todos los que trataron de ayudar.

  2. 0

    Creo que estás confundiendo el href y src atributos. Mirando tu código veo dos cosas:

    documento.getElementById(‘imagen’).setAttribute(‘href’, este.src);
    //de la ventana.alert(document.getElementById(‘imagen’).src);

    Poner la imagen href atributo, el cual debe src, y su src-atributo del enlace, la cual debe ser href. Lo curioso es que su correcta en la ventana.alerta

    Así:

    documento.getElementById(‘imagen’).setAttribute(‘src’, este.href’);
    de la ventana.alert(document.getElementById(‘imagen’).src

    Debería funcionar.

    • Lo siento que me falta una línea de código comentado //de la ventana.alert(document.getElementById(‘imagen’).src);. Para el propósito de la prueba para ver si el atributo href es cambiado en el onclick. Puedo obtener indefinido como resultado.
  3. 0
    var image = document.getElementById('image');
    image.setAttribute('href', image.src);

    Debería funcionar.

    • Nope no funciona para mí. Me dan una indefinido si yo uso y alerta.
  4. 0

    cambiar esta línea

    document.getElementById('image').setAttribute('href', this.src); 

    para de esta manera

    document.getElementById('image').setAttribute('src', this.href); 
    • Necesito cambiar el atributo href para el src utilizando onclick.

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea