Я хочу что-то подобное этому человеку, за исключением того, что элемент, который я хочу сопоставить, может быть не прямым братом.
Если бы у меня был этот HTML, например,
<h3>
<span>
<b>Whaddup?</b>
</span>
</h3>
<h3>
<span>
<b>Hello</b>
</span>
</h3>
<div>
<div>
<img />
</div>
<span id="me"></span>
</div>
<h3>
<span>
<b>Goodbye</b>
</span>
</h3>
Я хотел бы иметь возможность сделать что-то вроде этого:
var link = $("#me").closestPreviousElement("h3 span b");
console.log(link.text()); //"Hello"
Есть ли простой способ сделать это в jQuery?
РЕДАКТИРОВАТЬ. Я должен был уточнить свою спецификацию. $("#me")
может иметь или не иметь родительский div. Код не должен предполагать, что он это делает. Я не знаю ничего об окружающих элементах.