ma fenêtre contextuelle devrait s'afficher lorsque le score = 6, mais je ne peux pas le faire fonctionner

Anna Ellegaard Skytte

Je veux que la fenêtre contextuelle s'affiche lorsque le score est égal à 6. puis, lorsque vous appuyez sur le bouton, la page doit se recharger. Mais je n'arrive pas à le faire fonctionner. J'ai essayé la fonction avec l'instruction if mais cela ne fonctionne pas. donc je ne sais pas quoi faire ni comment le faire. donc ça me ferait plaisir si quelqu'un pouvait m'aider :)

//Function for the dropdown content
function dropdownTips() {
    document.getElementById("mydropdown").classList.toggle("show");
  }
  
  
  window.addEventListener("click", function(event) {
    if (!event.target.matches('.dropbtn')) {
  
      var dropdowns = document.getElementsByClassName("dropdowncontent");
      var i;
      for (i = 0; i < dropdowns.length; i++) {
        var openDropdown = dropdowns[i];
        if (openDropdown.classList.contains('show')) {
          openDropdown.classList.remove('show');
        }
      }
    }
  });
  
  //the game
  
  // Declares global variables
  let score = 0,
    cardToMatch = null;
  
  // Calls `flipCard` on any click
  window.addEventListener("click", flipCard);
  
  
  // Defines the click listener
  function flipCard(event) {
  
    // Identifies the card where the click happened
    const card = event.target.closest(".card");
  
    // Ignores irrelevant/invalid clicks
    if (!card || card.classList.contains("open")) {
      return;
    }
  
    // A valid click always opens the card
    card.classList.add("open");
  
    // If this is the 1st card of 2, remember it
    if (cardToMatch === null) {
      cardToMatch = card;
    } else {
  
  
      // If it's the 2nd card, compare types
      // If they match...
      if (card.dataset.type === cardToMatch.dataset.type) {
  
        // ...Increment score and show it in the DOM
        updateScoreDisplay(++score);
      }
  
      // If they don't...
      else {
        // ...Flip both cards back over
        setTimeout((first, second) => {
          first.classList.remove("open");
          second.classList.remove("open");
          
        }, 3000, card, cardToMatch);
        
        // Either way, next click will be the 1st of 2
      }
      
      cardToMatch = null;
    }
  }
  
  function updateScoreDisplay(newScore) {
    // Syncs the user-displayed value w/ score
    const element = document.querySelector(".score span");
    element.textContent = newScore;
  }

  // popup section
  
  let popup = document.querySelector(".popup");

  popup = function() {
      if (score === 6) {
          popup.style.display ="block";
          console.log("hello");
      }
  }
* {
  margin: 0;
  padding: 0;
  font-family: 'Lato', sans-serif;
}

header {
  background-color:#00005e;
  height: 50px;
  position: relative;
}

header h1 {
  color: white;
  position: absolute;
  top: 10%;
  left: 38%;
  right: 40%;
  width: 355px;
}

/*The 'tips?' button and the drop down content*/
header button {
display: inline-flex;
position:absolute;
align-items: center;
right: 2%;
top: 15%;
bottom: 15%;
padding: 10px 20px;
font-size: 20px;
background-color:white;
color: #00005e;
border-radius: 10px;
cursor: pointer;
border-color: transparent;
}

header button:hover {
opacity: 80%;
}


.dropdowncontent {
display: none;
position: absolute;
right: 0%;
top: 100%;
background-color:#010169;
min-width: 160px;
max-width: 400px;
box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.808);
border-bottom-left-radius: 20px;
z-index: 100;

}

.dropdowncontent li {
color: white;
padding: 12px 16px;
text-decoration: none;
display: block;
}

.advise{
font-size: 19px;
}

.passwordtips {
font-size: 30px;
left: 20%;
}

.show {
display:block;
}

/*The link in the dropdowncontent*/
a {
text-decoration: underline;
color: white;
}

a:hover {
cursor: pointer;
}

/*The score counter*/
.score {
  color: #01016e;
  display: flex;
  justify-content: center;
  margin: 10px;
  font-size: 30px;
}

/*The game section*/
.sectionOne {
  max-width: 1100px;
  height: 550px;
  display: flex;
  justify-content: space-around;
  margin-top: 10px;
  margin-left: auto;
  margin-right: auto;
  border-radius: 7px;
  border-color: #00005e;
  border-style: solid;
  border-width: 5px;
  position: relative;
}

/*The sections content*/
.wrapper {
width: 99%;
height: 100%;
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-auto-rows: 183px;
margin-top: 7px;
}

.card{
background-color: #01016e;
color: white;
margin: 10px 10px;
height: 150px;
text-align: center;
display: flex;
justify-content: center;
align-items: center;
font-size: 0;
border-radius: 5px;
}

.card h2{
  padding: 2px;
  transform: scale(-1,1);
}

.card:hover {
cursor: pointer;
}

.open{
animation: flip .5s;
animation-fill-mode: forwards;
transform-style: preserve-3d;
}

@keyframes flip {
from { 
  background: #00005e;
  font-size: 0;
}
to{
  background: rgb(20, 73, 185);
  font-size:17px;
  transform: rotateY( 180deg );
}
}

/* pop up section */
.popup {
  position: absolute;
  background-color: white;
  width: 700px;
  height: 500px;
  z-index: 100;
  right: 50.5vh;
  top: 14%;
  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.808);
  border-radius: 8px;
  display: none;
}

.congrats {
  position: relative;
  display: flex;
  justify-content: center;
  height: 40px;
  top: 20%;
  color: #00005e;
  font-size: 40px;
}

.matches {
  position: relative;
  height: 40px;
  top: 35%;
  color: #00005e;
  display: flex;
  justify-content: center;
  font-size: 30px;
}

.playAgain {
  position: absolute;
  height: 40px;
  width: 150px;
  top: 65%;
  left: 40%;
  cursor: pointer;
  color: white;
  background-color: #00005e;
  border-style: none;
  font-size: 20px;
  border-radius: 5px;
}

/*The 'DID YOU KNOW' over the ticker*/
.facts {
display: flex;
justify-content: space-around;
margin-top: 15px;
font-size: 20px;
color: #00005e;
}

/*The facts ticker*/
.tcontainer {
max-width: 1100px;
margin-top: 20px;
overflow: hidden;
margin-left: auto;
margin-right: auto;
border-radius: 5px;
z-index: 1000;
}

.ticker-wrap {
width: 100%;
padding-left: 100%; 
background-color: #00005e;
}

@keyframes ticker {
0% { transform: translate3d(0, 0, 0); }
100% { transform: translate3d(-100%, 0, 0); }
}
.ticker-move {
 display: inline-block;
white-space: nowrap;
padding-right: 100%;
animation-iteration-count: infinite;
animation-timing-function: linear;
animation-name: ticker;
animation-duration: 55s;
}
.ticker-move:hover{
animation-play-state: paused; 
}

.ticker-item{
display: inline-block; 
padding-top: 5px;
padding-bottom: 2px;
padding-right: 3em;
color: white;
min-height: 40px;
font-size: 25px;
}


/*The pause button for the ticker*/
.pause {
display: flex;
justify-content: center;
margin-top: 10px;
}

.pausebutton {
padding: 5px;
border-radius: 3px;
background-color: #00005e;
color: white;
border-style: none;
cursor: pointer;
}

.pausebutton:hover {
background-color: #3c3b6e;
}
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="css/style.css">

    <link rel="preconnect" href="https://fonts.gstatic.com">
    <link href="https://fonts.googleapis.com/css2?family=Lato:wght@700&display=swap" rel="stylesheet">
    <link rel="shortcut icon" href="img/favicon.ico" type="image/x-icon" />
    <title>The Password Game</title>
</head>
<body>
    <header>
        <h1>THE PASSWORD GAME</h1>

        <div class="dropdown">
            <button onclick="dropdownTips()" class="dropbtn">TIPS?</button>
            <div class="dropdowncontent" id="mydropdown" >
                <ul>
                    <li class="passwordtips">Tips for making strong passwords: </li>
                    <li class="advise">1. Use 16 characters or more (use both uppercase and lowercase letters, number and symbols.)</li>
                    <li class="advise">2. Never use the same password twice.</li>
                    <li class="advise">3. Use a password manager.</li>
                    <li class="advise">4. Don't write your passwords down on paper.</li>
                    <li class="advise">5. Don't share your passwords with others.</li>
                    <li class="advise">6. Change your password after a breach.</li>
                    <li class="advise">7. Sign up for data breach notifications. (like <a href="https://haveibeenpwned.com/" target="_blank">haveibeenpwned.com</a>).</li>
                    <li class="advise">8. Check your accounts regularly for any suspicious activity. </li>
                </ul>
            </div>
        </div>
    </header>

    <div class="score">Score:<span> 0</span></div>

    <section class="sectionOne">
        <div class="wrapper" id="card-deck">
            <div class="card" data-type="1"><h2>What information should you NEVER use in a password?</h2></div>
            <div id="answerSix" class="card"  data-type="6"><h2>1 log in</h2></div>
            <div id="cardThree" class="card"  data-type="3"><h2>When should you ALWAYS change your password?</h2></div>
            <div id="anserFive" class="card"  data-type="5"><h2>suspicious activity</h2></div>
            <div id="cardTwo" class="card"  data-type="2"><h2>Who is it okay to tell your password to?</h2></div>
            <div id="answerFour" class="card" data-type="4"><h2>16</h2></div>
            <div id="answerThree" class="card" data-type="3"><h2>After a data breach</h2></div>
            <div id="answerTwo" class="card" data-type="2"><h2>No one</h2></div>
            <div id="CardSix" class="card" data-type="6"><h2>For how many log ins is it okay to use the same password?</h2></div>
            <div id="cardFour" class="card" data-type="4"><h2>How many characters should you AT LEAST use in a password?</h2></div>
            <div class="card" data-card="firstSet" data-type="1"><h2>Name and Birthday</h2></div>
            <div id="cardFive" class="card" data-type="5"><h2>What should you regularly look for in your accounts?</h2></div>
        </div>
    </section>

    <section class="popup">
        <h3 class="congrats">Congratulations!</h3>
        <h3 class="matches">You got 6/6 matches</h3>
        <button class="playAgain">Play again?</button>
    </section>

    <div class="facts">
        <h2>DID YOU KNOW?</h2>
    </div>

    <div class="tcontainer"><div class="ticker-wrap"><div class="ticker-move">
        <div class="ticker-item">There is a hacker attack every 39 seconds.</div>
        <div class="ticker-item">90% of passwords can be cracked in less than 6 hours.</div>
        <div class="ticker-item">80% of hacking related breaches are linked to insufficient passwords.</div>
        <div class="ticker-item">59% use their name or birthday in their password.</div>
        <div class="ticker-item">6.850.000 passwords are getting hacked each day.</div>
      </div></div></div>

    <div class="pause">
        <p>Hold your mouse over to pause</p>
    </div>
    <script src="javascript/javascript.js" ></script>
</body>
</html>

codeur

vous avez ce code qui ne s'exécute pas lorsque le score est incrémenté

popup = function() {
      if (score === 6) {
          popup.style.display ="block";
          console.log("hello");
      }
  }

j'ai donc créé une fonction pour vérifier le score comme ça

let popup = document.querySelector("#popup");
function showPopup() {
      if (score === 6) {
          popup.style.display ="block";
          console.log("hello");
      }
  }

Et appelez la showPopupfonction lorsque le score est ajouté comme ceci

if (card.dataset.type === cardToMatch.dataset.type) {
        // ...Increment score and show it in the DOM
        updateScoreDisplay(++score);
        showPopup();
      }

code complet :

    //Function for the dropdown content
    let popup = document.querySelector("#popup");
    function showPopup() {
          if (score > 0) {
              popup.style.display ="block";
              console.log("hello");
          }
      }
    function dropdownTips() {
        document.getElementById("mydropdown").classList.toggle("show");
      }
      
      
      window.addEventListener("click", function(event) {
        if (!event.target.matches('.dropbtn')) {
      
          var dropdowns = document.getElementsByClassName("dropdowncontent");
          var i;
          for (i = 0; i < dropdowns.length; i++) {
            var openDropdown = dropdowns[i];
            if (openDropdown.classList.contains('show')) {
              openDropdown.classList.remove('show');
            }
          }
        }
      });
      
      //the game
      
      // Declares global variables
      let score = 0,
        cardToMatch = null;
      
      // Calls `flipCard` on any click
      window.addEventListener("click", flipCard);
      
      
      // Defines the click listener
      function flipCard(event) {
      
        // Identifies the card where the click happened
        const card = event.target.closest(".card");
      
        // Ignores irrelevant/invalid clicks
        if (!card || card.classList.contains("open")) {
          return;
        }
      
        // A valid click always opens the card
        card.classList.add("open");
      
        // If this is the 1st card of 2, remember it
        if (cardToMatch === null) {
          cardToMatch = card;
        } else {
      
      
          // If it's the 2nd card, compare types
          // If they match...
          if (card.dataset.type === cardToMatch.dataset.type) {
      
            // ...Increment score and show it in the DOM
            updateScoreDisplay(++score);
            showPopup();
          }
      
          // If they don't...
          else {
            // ...Flip both cards back over
            setTimeout((first, second) => {
              first.classList.remove("open");
              second.classList.remove("open");
              
            }, 3000, card, cardToMatch);
            
            // Either way, next click will be the 1st of 2
          }
          
          cardToMatch = null;
        }
      }
      
      function updateScoreDisplay(newScore) {
        // Syncs the user-displayed value w/ score
        const element = document.querySelector(".score span");
        element.textContent = newScore;
      }
    * {
      margin: 0;
      padding: 0;
      font-family: 'Lato', sans-serif;
    }

    header {
      background-color:#00005e;
      height: 50px;
      position: relative;
    }

    header h1 {
      color: white;
      position: absolute;
      top: 10%;
      left: 38%;
      right: 40%;
      width: 355px;
    }

    /*The 'tips?' button and the drop down content*/
    header button {
    display: inline-flex;
    position:absolute;
    align-items: center;
    right: 2%;
    top: 15%;
    bottom: 15%;
    padding: 10px 20px;
    font-size: 20px;
    background-color:white;
    color: #00005e;
    border-radius: 10px;
    cursor: pointer;
    border-color: transparent;
    }

    header button:hover {
    opacity: 80%;
    }


    .dropdowncontent {
    display: none;
    position: absolute;
    right: 0%;
    top: 100%;
    background-color:#010169;
    min-width: 160px;
    max-width: 400px;
    box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.808);
    border-bottom-left-radius: 20px;
    z-index: 100;

    }

    .dropdowncontent li {
    color: white;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
    }

    .advise{
    font-size: 19px;
    }

    .passwordtips {
    font-size: 30px;
    left: 20%;
    }

    .show {
    display:block;
    }

    /*The link in the dropdowncontent*/
    a {
    text-decoration: underline;
    color: white;
    }

    a:hover {
    cursor: pointer;
    }

    /*The score counter*/
    .score {
      color: #01016e;
      display: flex;
      justify-content: center;
      margin: 10px;
      font-size: 30px;
    }

    /*The game section*/
    .sectionOne {
      max-width: 1100px;
      height: 550px;
      display: flex;
      justify-content: space-around;
      margin-top: 10px;
      margin-left: auto;
      margin-right: auto;
      border-radius: 7px;
      border-color: #00005e;
      border-style: solid;
      border-width: 5px;
      position: relative;
    }

    /*The sections content*/
    .wrapper {
    width: 99%;
    height: 100%;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: 183px;
    margin-top: 7px;
    }

    .card{
    background-color: #01016e;
    color: white;
    margin: 10px 10px;
    height: 150px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 0;
    border-radius: 5px;
    }

    .card h2{
      padding: 2px;
      transform: scale(-1,1);
    }

    .card:hover {
    cursor: pointer;
    }

    .open{
    animation: flip .5s;
    animation-fill-mode: forwards;
    transform-style: preserve-3d;
    }

    @keyframes flip {
    from { 
      background: #00005e;
      font-size: 0;
    }
    to{
      background: rgb(20, 73, 185);
      font-size:17px;
      transform: rotateY( 180deg );
    }
    }

    /* pop up section */
    #popup {
      position: absolute;
      background-color: white;
      width: 700px;
      height: 500px;
      z-index: 100;
      right: 50.5vh;
      top: 14%;
      box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.808);
      border-radius: 8px;
      display: none;
    }

    .congrats {
      position: relative;
      display: flex;
      justify-content: center;
      height: 40px;
      top: 20%;
      color: #00005e;
      font-size: 40px;
    }

    .matches {
      position: relative;
      height: 40px;
      top: 35%;
      color: #00005e;
      display: flex;
      justify-content: center;
      font-size: 30px;
    }

    .playAgain {
      position: absolute;
      height: 40px;
      width: 150px;
      top: 65%;
      left: 40%;
      cursor: pointer;
      color: white;
      background-color: #00005e;
      border-style: none;
      font-size: 20px;
      border-radius: 5px;
    }

    /*The 'DID YOU KNOW' over the ticker*/
    .facts {
    display: flex;
    justify-content: space-around;
    margin-top: 15px;
    font-size: 20px;
    color: #00005e;
    }

    /*The facts ticker*/
    .tcontainer {
    max-width: 1100px;
    margin-top: 20px;
    overflow: hidden;
    margin-left: auto;
    margin-right: auto;
    border-radius: 5px;
    z-index: 1000;
    }

    .ticker-wrap {
    width: 100%;
    padding-left: 100%; 
    background-color: #00005e;
    }

    @keyframes ticker {
    0% { transform: translate3d(0, 0, 0); }
    100% { transform: translate3d(-100%, 0, 0); }
    }
    .ticker-move {
     display: inline-block;
    white-space: nowrap;
    padding-right: 100%;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    animation-name: ticker;
    animation-duration: 55s;
    }
    .ticker-move:hover{
    animation-play-state: paused; 
    }

    .ticker-item{
    display: inline-block; 
    padding-top: 5px;
    padding-bottom: 2px;
    padding-right: 3em;
    color: white;
    min-height: 40px;
    font-size: 25px;
    }


    /*The pause button for the ticker*/
    .pause {
    display: flex;
    justify-content: center;
    margin-top: 10px;
    }

    .pausebutton {
    padding: 5px;
    border-radius: 3px;
    background-color: #00005e;
    color: white;
    border-style: none;
    cursor: pointer;
    }

    .pausebutton:hover {
    background-color: #3c3b6e;
    }


    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <link rel="stylesheet" href="css/style.css">

        <link rel="preconnect" href="https://fonts.gstatic.com">
        <link href="https://fonts.googleapis.com/css2?family=Lato:wght@700&display=swap" rel="stylesheet">
        <link rel="shortcut icon" href="img/favicon.ico" type="image/x-icon" />
        <title>ok</title>
    </head>
    <body>
        <header>
            <h1>THE PASSWORD GAME</h1>

            <div class="dropdown">
                <button onclick="dropdownTips()" class="dropbtn">TIPS?</button>
                <div class="dropdowncontent" id="mydropdown" >
                    <ul>
                        <li class="passwordtips">Tips for making strong passwords: </li>
                        <li class="advise">1. Use 16 characters or more (use both uppercase and lowercase letters, number and symbols.)</li>
                        <li class="advise">2. Never use the same password twice.</li>
                        <li class="advise">3. Use a password manager.</li>
                        <li class="advise">4. Don't write your passwords down on paper.</li>
                        <li class="advise">5. Don't share your passwords with others.</li>
                        <li class="advise">6. Change your password after a breach.</li>
                        <li class="advise">7. Sign up for data breach notifications. (like <a href="https://haveibeenpwned.com/" target="_blank">haveibeenpwned.com</a>).</li>
                        <li class="advise">8. Check your accounts regularly for any suspicious activity. </li>
                    </ul>
                </div>
            </div>
        </header>

        <div class="score">Score:<span> 0</span></div>

        <section class="sectionOne">
            <div class="wrapper" id="card-deck">
                <div class="card" data-type="1"><h2>What information should you NEVER use in a password?</h2></div>
                <div id="answerSix" class="card"  data-type="6"><h2>1 log in</h2></div>
                <div id="cardThree" class="card"  data-type="3"><h2>When should you ALWAYS change your password?</h2></div>
                <div id="anserFive" class="card"  data-type="5"><h2>suspicious activity</h2></div>
                <div id="cardTwo" class="card"  data-type="2"><h2>Who is it okay to tell your password to?</h2></div>
                <div id="answerFour" class="card" data-type="4"><h2>16</h2></div>
                <div id="answerThree" class="card" data-type="3"><h2>After a data breach</h2></div>
                <div id="answerTwo" class="card" data-type="2"><h2>No one</h2></div>
                <div id="CardSix" class="card" data-type="6"><h2>For how many log ins is it okay to use the same password?</h2></div>
                <div id="cardFour" class="card" data-type="4"><h2>How many characters should you AT LEAST use in a password?</h2></div>
                <div class="card" data-card="firstSet" data-type="1"><h2>Name and Birthday</h2></div>
                <div id="cardFive" class="card" data-type="5"><h2>What should you regularly look for in your accounts?</h2></div>
            </div>
        </section>

        <section id="popup">
            <h3 class="congrats">Congratulations!</h3>
            <h3 class="matches">You got 6/6 matches</h3>
            <button class="playAgain">Play again?</button>
        </section>

        <div class="facts">
            <h2>DID YOU KNOW?</h2>
        </div>

        <div class="tcontainer"><div class="ticker-wrap"><div class="ticker-move">
            <div class="ticker-item">There is a hacker attack every 39 seconds.</div>
            <div class="ticker-item">90% of passwords can be cracked in less than 6 hours.</div>
            <div class="ticker-item">80% of hacking related breaches are linked to insufficient passwords.</div>
            <div class="ticker-item">59% use their name or birthday in their password.</div>
            <div class="ticker-item">6.850.000 passwords are getting hacked each day.</div>
          </div></div></div>

        <div class="pause">
            <p>Hold your mouse over to pause</p>
        </div>
    </body>
    </html>

Et j'ai changé la section popup au idlieu de classcomme ça

 <section id="popup">

Cet article est collecté sur Internet, veuillez indiquer la source lors de la réimpression.

En cas d'infraction, veuillez [email protected] Supprimer.

modifier le
0

laisse moi dire quelques mots

0commentaires
connexionAprès avoir participé à la revue

Articles connexes

TOP liste

  1. 1

    Microsoft.WebApplication.targets

  2. 2

    Spring @RequestParam DateTime format comme ISO 8601 Date Heure facultative

  3. 3

    comment supprimer "compte de connexion google" à des fins de développement - actions sur google

  4. 4

    Comment ajouter une entrée à une table de base de données pour une combinaison de deux tables

  5. 5

    Passer la taille d'un tableau 2D à une fonction ?

  6. 6

    Exporter la table de l'arborescence vers CSV avec mise en forme

  7. 7

    Impossible d'accéder à la vue personnalisée pendant le test de l'interface utilisateur dans XCode

  8. 8

    Créer un système Buzzer à l'aide de python

  9. 9

    Comment changer le navigateur par défaut en Microsoft Edge pour Jupyter Notebook sous Windows 10 ?

  10. 10

    impossible d'obtenir l'image d'arrière-plan en plein écran dans reactjs

  11. 11

    Algorithme: diviser de manière optimale une chaîne en 3 sous-chaînes

  12. 12

    CSS: before ne fonctionne pas sur certains éléments,: after fonctionne très bien

  13. 13

    Conversion double en BigDecimal en Java

  14. 14

    Comment obtenir l'intégration contextuelle d'une phrase dans une phrase à l'aide de BERT ?

  15. 15

    Comment choisir le nombre de fragments et de répliques Elasticsearch

  16. 16

    Comment vérifier si un utilisateur spécifique a un rôle? Discord js

  17. 17

    Comment créer un bot à compte à rebours dans Discord en utilisant Python

  18. 18

    Existe-t-il un moyen de voir si mon bot est hors ligne ?

  19. 19

    comment afficher un bouton au-dessus d'un autre élément ?

  20. 20

    Comment activer le message Pylint "too-many-locals" dans VS Code?

  21. 21

    Je continue à obtenir l'objet 'WSGIRequest' n'a pas d'attribut 'Get' sur django

chaudétiquette

Archive