recherche

Maison  >  Questions et réponses  >  le corps du texte

Comment changer la couleur d’arrière-plan d’un div en utilisant jQuery ? [fermé]

Je souhaite changer la couleur d'arrière-plan d'un div lors de l'exécution à l'aide de jquery. Le div s'affiche mais sa couleur d'arrière-plan ne change pas. Je ne sais pas ce qui ne va pas avec le code que j'ai écrit.

<html>
    <head>
        <script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
    </head>
    <body>
        <div id="color" style="width:100px;height:100px;background-color:grey;">Hello, world!</div>
        <script>
            function change_color()
            {
                r = Math.floor(Math.random()*256);
                g = Math.floor(Math.random()*256);
                b = Math.floor(Math.random()*256);

                rgb_ = "rgb(" + r + ", " + g + ", " + b + ")";

                $("#color").css("background-color", rgb_);
            }

            setInterval(change_color, 1000);
        </script>
    </body>
</html>

Je veux une valeur RVB décimale.

P粉585541766P粉585541766465 Il y a quelques jours591

répondre à tous(1)je répondrai

  • P粉854119263

    P粉8541192632023-09-17 20:45:11

    Vous devez utiliser la fonction Math.floor à la place de floor (floor n'est pas défini dans le code actuel, c'est pourquoi vos valeurs r g b sont invalides) :

    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
    <html>
    <head>
        <script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
    </head>
    <body>
        <div id="color" style="width:100px;height:100px;background-color:grey;">Hello, world!</div>
    
        <script>
            function change_color() {
                var r = Math.floor(Math.random() * 256);
                var g = Math.floor(Math.random() * 256);
                var b = Math.floor(Math.random() * 256);
                var rgb_ = "rgb(" + r + ", " + g + ", " + b + ")";
                $("#color").css("background-color", rgb_);
            }
    
            setInterval(change_color, 1000);
        </script>
    </body>
    </html>

    répondre
    0
  • Annulerrépondre