javascript - Comment obtenir les valeurs précédentes et suivantes de l'événement click.
大家讲道理
大家讲道理 2017-06-30 09:58:43
0
2
855
for (var i = 0; i < pic.length; i++) {
        pic[i].onclick = function () {
            var aA = this.getAttribute("href");
            return false;
        }
    }

La boucle for a été parcourue pour lier l'événement click. Lorsque vous cliquez sur l'image 1, vous pouvez déjà obtenir la valeur de href dans l'étiquette (remarque : href est le lien de saut dans l'étiquette A, et return false est à éviter sauter). Maintenant, je veux obtenir les valeurs href de l'étiquette précédente et de l'étiquette suivante lorsque l'on clique sur le motif actuel, de sorte que l'image du milieu affiche le motif 1, le motif de gauche affiche le motif 4 et le motif de droite affiche le motif. 2. Comment fonctionner ?

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

répondre à tous(2)
Ty80
for (var i = 0; i < pic.length; i++) {
    pic[i].index=i;
    pic[i].onclick = function () {
        var aA = this.getAttribute("href");
        //如果当前是第一个,没有上一个,值获取下一个
        if(this.index===0){
            var aANext=pic[this.index-1].getAttribute("href");
        }
        //如果当前是最后一个,没有下一个,只获取上一个
        else if(this.index===pic.length-1){
             var aAPrev=pic[this.index-1].getAttribute("href");
        }
        //否则上下都获取
        else{
            var aAPrev=pic[this.index-1].getAttribute("href");
            var aANext=pic[this.index-1].getAttribute("href");
        }
        
        
        return false;
    }
}
Peter_Zhu

Merci, votre méthode est très bonne. Vous définissez un attribut d'index sur l'élément et les éléments adjacents.
C'est ainsi que je l'écris maintenant, mais je dois encore trouver comment faire apparaître le point en premier. quatrième photo
<script>

var pic = document.getElementById('pic').getElementsByTagName('a');
var pid = document.getElementById('pid').getElementsByTagName('img');
for (var i = 0; i < pic.length; i++) {
    pic[i].onclick = function () {
        var aA = this.getAttribute("href");
        var pid = document.getElementById('pid');
        pid.setAttribute("src", aA);
        var aB = this.parentNode.previousSibling.firstChild.getAttribute('href')
        pid.previousSibling.setAttribute('src', aB);

        var aC = this.parentNode.nextSibling.firstChild.getAttribute('href')
        pid.nextSibling.setAttribute('src', aC);
        return false;
    }
}

</script>

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal