Доступ к элементу в дереве 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, время: 04:53. |