2014-11-19 3 views
0

Я пытаюсь подсчитать теги раздела на странице, но всякий раз, когда этот скрипт запускается, он возвращает 0. Любые идеи?JQuery .length продолжает возвращаться 0

var sectionCount = $("section").length; 
    console.log(sectionCount); 

HTML, я рассчитываю от заключается в следующем:

<body> 
     <div class="container"> 
      <section class="slide">1</section> 
      <section class="slide">2</section> 
      <section class="slide">3</section> 
     </div> 
    </body> 
+1

, когда (или если) вы запустите JS скрипт? элементы 'section' могут не существовать, если вы запускаете скрипт в' ', когда DOM не загружается. – Cheery

+0

У меня есть сценарий, связанный с моей головой документа и его запуск в собственном отдельном файле. Jsfiddle здесь: http://jsfiddle.net/58yuowje/ – Jackanapes

+1

Если скрипт находится в голове, а элементы 'section' находятся в теле, то они не существуют при запуске скрипта. –

ответ

2

Просто добавьте пункт $(document).ready() так, что он работает после того, как HTML, DOM был загружен.

$(document).ready(function() { 
 
    var sectionCount = $("section").length; 
 
    console.log(sectionCount); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<body> 
 
     <div class="container"> 
 
      <section class="slide">1</section> 
 
      <section class="slide">2</section> 
 
      <section class="slide">3</section> 
 
     </div> 
 
    </body>

Смежные вопросы