jQuery .next () и .prev () работают не так, как должны! - PullRequest
1 голос
/ 27 апреля 2010

Я хочу получить брат .next() и .prev() элемента HTML без исключения TextNodes .

Мне нужно понять, является ли элемент напрямую окруженным <br> элементами HTML.

Это вернет true:

<br>
<div></div>
<br>

Это вернет false:

<br>
Some text
<div></div>
<br>

НО это также должно возвращать true:

<br>

<div></div>
<br>

Третий пример в основном использует пустой TextNode, или пробелы, или переводы строк.

Какой лучший способ сделать это?

Ответы [ 2 ]

3 голосов
/ 27 апреля 2010

Используйте previousSibling и nextSibling Я бы сказал.

Если он имеет тип TextNode и значение ложно, перейдите на другой шаг.

0 голосов
/ 27 апреля 2010

Код jQuery для «next ()», «prev ()», «parent ()», «nextAll», «prevAll» и большинства других подобных типов явно пропускает узлы, которые не являются элементами (тип 1).Такое поведение не является необязательным или изменяемым без изменения основ библиотеки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...