Получите элементы всего 1 уровень ниже элемента тока JavaScript

Простой способ сделать это - просто установить позицию дерева как «относительную».

Вы можете прочитать больше здесь о свойстве position в CSS.

Чтобы определить 2 раздела, я использовал тег div :

#div1 {
  background-color: red;
  width: 800px;
  height: 200px;
  display: block;
}

#div2 {
  background-color: yellow;
  width: 800px;
  height: 200px;
  display: block;
}

#myImg {
  height : 200px;
  position: relative;
  top: -50%;
}

10
задан Soviut 27 February 2009 в 07:12
поделиться

3 ответа

Вы могли использовать функцию, которая исключает все узлы неэлемента:

function getChildNodes(node) {
    var children = new Array();
    for(var child in node.childNodes) {
        if(node.childNodes[child].nodeType == 1) {
            children.push(child);
        }
    }
    return children;
}
12
ответ дан 3 December 2019 в 19:35
поделиться

Я настоятельно рекомендовал бы, чтобы Вы посмотрели на JQuery. Задача, которую Вы надеетесь делать, проста в чистом JavaScript, но если Вы делаете какой-либо дополнительный обход DOM, JQuery собирается сохранить Вас бесчисленные часы разочарования. Не только это, но и это работает через все браузеры и имеет очень хороший "документ готовый" метод.

Ваша проблема, решенная с JQuery, похожа:

$(document).ready(function() {
    var children = $("#node").children();
});

Это ищет любой элемент с идентификатором "узла", затем возвращает его детей. В этом случае, children набор JQuery, который может быть выполнен с помощью итераций по использованию для цикла. Дополнительно Вы могли выполнить итерации по ним использующий каждого () команда.

4
ответ дан 3 December 2019 в 19:35
поделиться

Я думаю, что node.childNodes является правильным местом для запуска. Вы могли (чтобы заставить его работать с FF также), протестировать nodeName (и возможно тип узла) всех дочерних узлов, которые Вы получаете, для пропуска текстовых узлов.

Также Вы могли бы взглянуть на некоторую библиотеку JavaScript как прототип, которые обеспечивают много полезных функций.

0
ответ дан 3 December 2019 в 19:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: