Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

162
Visualizações
How to "do something" if 3 buttons clicked ? (I tried with this : )

Im having troubles with one part of my code. Yesterday, I tried it and it was fully working, and now it is not working anymore. I really don't understand so if you guys see something, tell me !

var FERNC1 = document.getElementById('pc1');
var FERNC2 = document.getElementById('pc11');
var UNNC1 = document.getElementById('pc8');

FERNC1.addEventListener('click', function () {
    fer1 = 1;
    bronze1 = 0;
    argent1 = 0;
    or1 = 0;
    platine1 = 0;
    diamant1 = 0;
    immortel1 = 0;
    console.log(fer1);
    FERNC2.addEventListener('click', function () {
        fer2 = 1;
        bronze2 = 0;
        argent2 = 0;
        or2 = 0;
        platine2 = 0;
        diamant2 = 0;
        immortel2 = 0;
        console.log(fer2);
        UNNC1.addEventListener('click', function () {
            un1 = 1;
            deux1 = 0;
            trois1 = 0;
            console.log(un1);

            if ((fer1 == 1 && fer2 == 1 && un1 == 1)) {
                document.getElementById('pc88').classList.add('inactiveLink');
                document.getElementById("s7").style.display = "block";
                document.getElementById("s8").style.display = "none";
                document.getElementById("s9").style.display = "none";
            }
            else {
                document.getElementById('pc88').classList.remove('inactiveLink');
                document.getElementById("s7").style.display = "none";
                document.getElementById("s8").style.display = "none";
                document.getElementById("s9").style.display = "none";
            }
        });
    });
});

Thank you guys

about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

The bets must be checked each time the buttons are clicked, like below:

FERNC1.addEventListener('click', function () {
fer1 = 1;
bronze1 = 0;
argent1 = 0;
or1 = 0;
platine1 = 0;
diamant1 = 0;
immortel1 = 0;
console.log(fer1);
if ((fer1 == 1 && fer2 == 1 && un1 == 1)) {
            document.getElementById('pc88').classList.add('inactiveLink');
            document.getElementById("s7").style.display = "block";
            document.getElementById("s8").style.display = "none";
            document.getElementById("s9").style.display = "none";
        }
        else {
            document.getElementById('pc88').classList.remove('inactiveLink');
            document.getElementById("s7").style.display = "none";
            document.getElementById("s8").style.display = "none";
            document.getElementById("s9").style.display = "none";
        }
}
FERNC2.addEventListener('click', function () {
    fer2 = 1;
    bronze2 = 0;
    argent2 = 0;
    or2 = 0;
    platine2 = 0;
    diamant2 = 0;
    immortel2 = 0;
    console.log(fer2);
    if ((fer1 == 1 && fer2 == 1 && un1 == 1)) {
        document.getElementById('pc88').classList.add('inactiveLink');
        document.getElementById("s7").style.display = "block";
        document.getElementById("s8").style.display = "none";
        document.getElementById("s9").style.display = "none";
    }
    else {
        document.getElementById('pc88').classList.remove('inactiveLink');
        document.getElementById("s7").style.display = "none";
        document.getElementById("s8").style.display = "none";
        document.getElementById("s9").style.display = "none";
    }
  }
UNNC1.addEventListener('click', function () {
        un1 = 1;
        deux1 = 0;
        trois1 = 0;
        console.log(un1);

        if ((fer1 == 1 && fer2 == 1 && un1 == 1)) {
            document.getElementById('pc88').classList.add('inactiveLink');
            document.getElementById("s7").style.display = "block";
            document.getElementById("s8").style.display = "none";
            document.getElementById("s9").style.display = "none";
        }
        else {
            document.getElementById('pc88').classList.remove('inactiveLink');
            document.getElementById("s7").style.display = "none";
            document.getElementById("s8").style.display = "none";
            document.getElementById("s9").style.display = "none";
        }
    });
about 4 years ago · Juan Pablo Isaza Relatório

0

Requirement:

  • There are 3 buttons
  • When all three buttons are clicked (in any order, and any number of times greater than 1), some particular block-of-code needs to be executed.

Approach:

const clickCounter = { btn1: 0, btn2: 0, btn3: 0 };
const areOtherBtnsClicked = (btn = 'btn1') => ( 
  Object.entries(clickCounter).reduce(
    (f, ([k, v])) => (k === btn ? f : f && v > 0),
    true
  )
);
const btnClickHandler = (btnNumber = 'btn1') => {
  clickCounter[btnNumber]++;
  if (areOtherBtnsClicked(btnNumber)) {
    someCodeBlock;
  }
};

Then, within the relevant part of the script, the btnClickHandler may be listed as the click-handler for each button by passing the button-number as an argument. So, something like this: addEventListener('click', ('<<bt1 or btn2 or btn3 goes here>>') => btnClickHandler()).

Some syntax errors may be present in above. Please comment or edit as necessary.

about 4 years ago · Juan Pablo Isaza Relatório

0

Can't you just add a class to your elements ?

Then it would be :

var clickableElement = document.querySelector('.customClass');

clickableElement.addEventListener('click', function () {

    if (this.id == "pc1") {

        fer1 = 1;
        bronze1 = 0;
        argent1 = 0;
        or1 = 0;
        platine1 = 0;
        diamant1 = 0;
        immortel1 = 0;
        console.log(fer1);

    } else if (this.id == "pc11") {

        fer2 = 1;
        bronze2 = 0;
        argent2 = 0;
        or2 = 0;
        platine2 = 0;
        diamant2 = 0;
        immortel2 = 0;
        console.log(fer2);

    } else if (this.id == "pc8") {

        un1 = 1;
        deux1 = 0;
        trois1 = 0;
        console.log(un1);

        if ((fer1 == 1 && fer2 == 1 && un1 == 1)) {
            document.getElementById('pc88').classList.add('inactiveLink');
            document.getElementById("s7").style.display = "block";
            document.getElementById("s8").style.display = "none";
            document.getElementById("s9").style.display = "none";
        }
        else {
            document.getElementById('pc88').classList.remove('inactiveLink');
            document.getElementById("s7").style.display = "none";
            document.getElementById("s8").style.display = "none";
            document.getElementById("s9").style.display = "none";
        }

    }

}
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda