我正在尝试使用javascript替换html中的url,但是虽然我通过“更改”它们进行测试来测试它们的值正确弹出,但是当我发布它并单击图像时,新的url不起作用应用。任何帮助将不胜感激

您能否看一下代码并告诉我发生了什么事?:

<script>
    var rutaBase = "assets/fotos/";

    function cambieFotos(cualFoto) {
        var listaFotos = ["360.jpg", "foto3.jpg", "mathura.jpg"];
        var numFotosLista = listaFotos.length;
        var foto1 = document.getElementById("foto1");
        var foto2 = document.getElementById("foto2");
        var foto3 = document.getElementById("foto3");

        for (i = 0; i < 3; i++) {
            var fotoAleatoria = listaFotos[Math.floor(Math.random() * numFotosLista)];
            var fotoRoll = document.getElementById("foto" + (i + 1));
            fotoRoll.src = "assets/fotos/" + fotoAleatoria;
            fotoRoll.href = "assets/fotos/" + fotoAleatoria; //this code is not working.

            var sacarFotoLista = listaFotos.indexOf(fotoAleatoria);
            listaFotos.splice(sacarFotoLista, 1);
            numFotosLista = listaFotos.length;
        }
    }
</script>
<div id="contenedor">
    <a href="#"><img id="foto1" onMouseOver="cambieFotos(this)" src="assets/fotos/360.jpg"></a> <--!this needs to update-->
    <a href="#"><img id="foto2" onMouseOver="cambieFotos(this)" src="assets/fotos/foto3.JPG"></a><--!this needs to update-->
    <a href="#"><img id="foto3" onMouseOver="cambieFotos(this)" src="assets/fotos/mathura.jpg"></a><--!this needs to update-->
</div>
<!--contenedor-->

最佳答案

fotoRoll是一个<img>,而不是周围的<a>。您应该改为修改父项:

fotoRoll.parentNode.href="assets/fotos/"+fotoAleatoria;

10-07 14:44
查看更多