Доступ к элементу в дереве DOM
Привет
Есть разметка <ul> <li><img src="1.png"></li> <li><img src="2.png"></li> <li><img src="3.png"></li> <li><img src="4.png"></li> <li><img src="5.png"></li> <li><img src="6.png"></li> <li><img src="7.png"></li> <li><img src="8.png"></li> <li><img src="9.png"></li> <li><img src="10.png"></li> </ul> нужно переписать строку, удаляющую Li с jQuery $("ul li:first").remove(); на javascript. Я написал var mainObj = document./*getElementsByTagName("ul").*/getElementsByTagName("li")[0]; var img = mainObj.firstChild; mainObj.removeChild(img); Сначала хочу удалить img, а потом li, сразу li не знаю как Сейчас работает, но не всегда. Если раскомментировать, будет ошибка. Нужен полный аналог строки $("ul li:first").remove(); |
var ul = document.getElementsByTagName("ul"); for(var i = 0; i < ul.length; i++){ var li = ul[i].getElementsByTagName("li")[0]; if(li){ li.parentNode.removeChild(li); break; } }а вообще: var li = document.querySelector("ul li:first-child"); li.parentNode.removeChild(li); |
А зачем в цикле перебирать? Почему нельзя достичь элемента, примерно как я написал?
|
Цитата:
Цитата:
|
Спасибо!
|
Помогите ещё преобразовать эти строки?
$("ul").append("<li><img src=''></li>"); $("ul").prepend("<li><img src=''></li>"); |
Цитата:
Цитата:
Цитата:
var mainObj = document.getElementsByTagName("ul")*!*[0]*/!*.getElementsByTagName("li")[0]; mainObj.parentNode.removeChild(mainObj ); Цитата:
|
При преобразовании
$("ul").append("<li><img src=''></li>"); $("ul").prepend("<li><img src=''></li>"); достаточно много кода получится? |
Нет.
|
document.querySelector("ul").innerHTML += "<li><img src=''></li>"; - так плохо? Для append(). Сейчас моргает моргает слайдер, с append() - нет. Моргает наверно из-за того, что динамически увеличивается узел ul.
|
Часовой пояс GMT +3, время: 02:25. |