Каюсь, схалтурил (извините). Можно так:
var uls = document.getElementsByTagName('ul'); for (var i=uls.length-1; i>=0; i--) { if (uls[i].innerHTML.search(/<li.*>/i) == -1) uls[i].parentNode.removeChild(uls[i]); Проверил, вроде работает. Дополнение: В любом случае, мне кажется со строкой быстрее будет чем с домом, хотя нагрузочного тестирования не проводил. |
Цитата:
|
Цитата:
Мне кажется, просто дело привычки. Т.е. мне привычнее обрабатывать через innerHTML, Вам через DOM. Разве это говорит, что код испорчен? |
Я тоже безмерно люблю innerHTML, но когда вопрос стоит "сколько тегов есть в таком-то теге", то это, разумеется, getElementsByTagName. Тут по названию метода ясно, что мы делаем, в случае же innerHTML -- из знания регулярных выражений, которые зачастую мало читабельные.
Цитата:
|
Часовой пояс GMT +3, время: 01:58. |