Rumah > Soal Jawab > teks badan
Saya mahu menukar warna latar belakang div semasa runtime menggunakan jquery. Div ditunjukkan tetapi warna latar belakangnya tidak berubah. Saya tidak tahu apa yang salah dengan kod yang saya tulis.
<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>
Saya mahu nilai rgb perpuluhan.
P粉8541192632023-09-17 20:45:11
Anda perlu menggunakan fungsi Math.floor
dan bukannya lantai (lantai tidak ditakrifkan dalam kod semasa, itulah sebabnya nilai r g b anda tidak sah):
<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>