Найти определённого, наважно какого юродного, брата
Например, имея структуру:
<div> <h1>title</h1> </div> <h2>title</h2> Или: <div> <h1>title</h1> </div> <div> <h2>title</h2> </div> Или: <h1>title</h1> <div> <h2>title</h2> </div> Или: <h1>title</h1> <h2>title</h2> Или же: <div> <h1>title</h1> </div> <div> <h1>title</h1> </div> <div> <h2>title</h2> </div> Как одной универсальной строкой jQuery или javascript, найти определённый первый попавшийся предыдущий элемент, относительно выбранного селектора. Например, было бы логично что-то типа: $('h2').prevAll('h1:first') Но, увы для меня, данная строка действует лишь для 4 примера и подобных ему, во всех остальных случая нужно выдумывать что-то своё, при этом, мне, не удаётся найти конкретно первого перед выбранным, например в такой структуре: <div> <h1>title</h1> <h1>title</h1> </div> <div> <h1>title</h1> <h1>title</h1> </div> <div> <h1>title</h1> </div> <div> <h2>title</h2> </div> Так как нужно что-то типа: $('h2').parents().find('h1:last:first') Не уверен, что это будет работать, хотя стоит проверить..., но всё же хочется знать, нет ли универсальной функции для поиска подобных элементов? |
Цитата:
![]() |
Удивительно, но мой пример, вроде бы, как раз то самое универсальное решение :)
|
|
Да, наважно кокого)))
|
Хотя, всё же, нет, это не то - http://jsfiddle.net/2vsB6/2/
|
Нужен именно предыдущий, в моём же решении может найтись элемент который за тем от которого происходит поиск.
|
Пожалуйста, не нужно шутить, реально нужен дельный совет ;)
|
Цитата:
|
1
2 3 4 5 6 Из этих чисел выберем 6, число 5 будет перед ним. 1 3 2 4 6 5 В данном случае перед 6 будет элемент 4. Это, значит, получение первого элемента, стоящего впереди выбранного. В структуре HTML не всё так просто, элементы разбросаны по веткам и нужный элемент в таком случае может оказать очень далеко, но всё же в DOM он будет перед выбранным. Так вот как его определить? Не запутал ещё сильней? :) |
Часовой пояс GMT +3, время: 04:12. |