This seems like a simple problem, but nothing fixes it. I am trying to dynamically change the background color (from white or pink to green) to some text using javascript / jQuery, but for some reason it does not work. The text has a CSS style called .novice.
Here is the CSS. It's simple. I also tried to completely remove the background color, so that it does not yet have the background color set.
<style type="text/css"> .novice { background-color: pink; } </style>
Here is an array with elements that I wrote using a loop. The first element has a novice class
var achievements = ['<span class="novice">novice - 10 or more guesses </span>', ...]
The following is an if statement, which, if true, assumes that the ".novice" class has the property "background-color: green" and makes the "newbie - 10 or more guesses" highlighted in green. I am sure that I have the correct time setting and the correct recording. However, when the wait time is greater than 10, the "newbie ..." will still not be highlighted in green.
if (timesguessed > 10) { $('.novice').css('background-color', 'green'); }
Am I printing this part above? I also tried replacing $ ('. Novice'). Css ('background-color', 'green'); with $ ('novice') background color (green)., although this is probably wrong.
Even if I print another line with a presumably recently changed novice class, the text will still not be highlighted in green.
document.write('<span class="novice">novice - 10 or more guesses </span>');
I know that the original CSS.novice class works because the text will be highlighted in pink if it doesn't matter if the time is exceeded or less than 10.
I'm not sure that Javascript does not change the CSS class, or what. Or maybe he is doing something else to redefine it?
Thanks for the help. Yes, I am new to javascript / jQuery.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <style type="text/css"> .novice { } </style> <script type="text/javascript" src="../MM_JAVASCRIPT2E/MM_JAVASCRIPT2E/_js/jquery-1.6.3.min.js"></script> <title>Number Guessing Game</title> </head> <body> <h1 style="text-align:center;"> Number Game </br> Try to guess my number that is between 0-1000 </h1> <script> </br><h2 style="text-align:center; font-size: 18px;"> The number was ' + realnumber + '.'); if (timesguessed == 1) { document.write('</span><h2 style="text-align:center;">It took you ' + timesguessed + ' guess.</h2>'); } else { document.write('<h2 style="text-align:center;">It took you ' + timesguessed + ' guesses.</h2>'); } // END LONG BLOCK OF CODE WITH GUESSING GAME MECHANISMS document.write('</br></br>') //below is the array written out with a loop var achievements = ['<span class="novice">novice - 10 or more guesses </span>',bronze - 7-10 guesses', 'silver', 'gold', 'titanium', 'platinum', 'diamond', ] var counter = 0; while (counter < achievements.length) { document.write('<h2 style="text-align:center;">' + achievements[counter] + ' '); counter++; } //below is the "if" function of question if (timesguessed > 10) { $('.novice').css('background-color', '#00FF00'); //why does this not work? } document.write('<span class="novice">novice - 10 or more guesses </span>'); //why does this not work? </script> </body> </html>