Показать сообщение отдельно
  #1 (permalink)  
Старый 09.10.2011, 13:48
Аватар для PeaceCoder
Профессор
Отправить личное сообщение для PeaceCoder Посмотреть профиль Найти все сообщения от PeaceCoder
 
Регистрация: 15.12.2009
Сообщений: 742

фишка или баг querySelectorAll?
Вот решил тестануть а верно ли работает нативный метод querySelectorAll в браузере Firefox.
<html>
<body>
<span>
   <div id='abc'>
       <i class='abc123'>текст</i>
       <span><i class='abc345'></i></span>
   </div>
   <i class='cde'></i>
</span>
<script type='text/javascript'>
A=document.getElementById('abc');
B= A.querySelectorAll('span i'); // тут должен быть массив из элемента .class=abc345, т.к. выборка идет из элемента, а не из документа.
alert([B[0].className,B.length]); // но это не так
C = document.querySelectorAll('#abc span i');
alert(C.length==1); // а тут верно

D = A.querySelectorAll('#abc span i');
alert([D[0].className, D.length]); // А теперь верно. Это как понимать? выборка из элемента равносильна выборки из документа?

E = A.querySelectorAll.call(A,'span i');
alert([E[0].className, E.length]); //и так не работает
</script>
</body>
</html>


В хроме тот же баг.
__________________
Настоящий программист думает и осознает сам решение задачи, а не копирует другие мысли, не осознавая их (c)
Относись к человеку так же, как хотелось бы отношения к себе (с)
Все нужно там, где оно нужно, а все не нужно нигде (с) Gozar
B~Vladi: А кто такой JavaScript стрелок?! micscr: это тот, кто не jQuery танкист.
Программы становятся медленнее быстрее, чем компьютеры становятся быстрее (с) Никлаус Вирт

Последний раз редактировалось PeaceCoder, 09.10.2011 в 14:27.
Ответить с цитированием