Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

jquery addclass to body tag

The following script is within a div, does this matter? As it doesn't work. Is the syntax right? Do I need to tell jquery to go up a level in the DOM first? how would I do this?

        $(document).ready(function() {
          $('body').addClass('diary');
        });    

Thanks guys.

Here is the relevant section in the HTML:

<body>

  <header>
    <div class="logo">
      <a href=""></a>
    </div>  
    <nav class="main-nav">
      <a class="first" href="http://www.adrianwaddingham.com">HOME</a>
      <a class="second" href="/sheriff">SHERIFF</a>
      <a class="third" href="/biography">BIOGRAPHY</a>
      <a class="fourth" href="/contact">CONTACT</a>     
      <a class="fifth" href="/diary">DIARY</a>     

    </nav>

  </header>

<script>
        $(document).ready(function() {
          $('body').addClass('diary');
        });    
</script>


<section class="copy-main">
  <article>
like image 440
Pete Norris Avatar asked Nov 12 '12 12:11

Pete Norris


4 Answers

I understand that you are viewing the html source to check body class you added. DOM manipulation with javascript is not visible in source code, but you can check it with Developer Tools in your browser(Chrome, Firefox and IE have one).

like image 127
halilb Avatar answered Sep 19 '22 13:09

halilb


Your code is perfectly correct since $('body') will search the whole DOM

like image 34
Kirill Ivlev Avatar answered Sep 22 '22 13:09

Kirill Ivlev


Your code looks fine. Check here, http://jsfiddle.net/muthkum/P5uS2/. Use FireBug or Chrome Inspector to check the <body> tag.

Make sure you included jquery file.

like image 28
Muthu Kumaran Avatar answered Sep 21 '22 13:09

Muthu Kumaran


No problem with script. Diary class will apply to body. Can you share you diary class and please check that jQuery is loaded correctly, use any development tool like firebug.

Add jQuery file in your page like following where Scripts is folder and jQuery.js is jQuery file. If you already included this in your page then check with any developer tool that it is loading correctly.

<script src="Scripts/jQuery.js" type="text/javascript"></script>

Or add from CDN

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js" type="text/javascript"></script>
like image 23
Kashif Avatar answered Sep 22 '22 13:09

Kashif