Cómo simplificar este jquery árbol de recorrido?
-
12-12-2019 - |
Pregunta
HTML
...
<a id="delete1" href="http://www.example.com">TEST</a>
<p>First</p>
<p>Second</p>
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
</ul>
<div id="hidden-qsd">123</div>
...
JS
var id = $('#delete1').nextUntil("div[id^='hidden']").next().last().attr('id');
Me gustaría obtener el id de los más cercanos "div" que comienza con "oculto" que se encuentra después del enlace "#delete1".
Este código anterior está trabajando, pero creo que hay una manera más simple de hacerlo.
Solución
$('#delete1').nextAll('[id^="hidden"]').attr('id')
nextAll()
es suficiente
ejemplo jsbin: http://jsbin.com/usowej/3/edit
Nota:si usted tiene más de un elemento cuyo id es comenzar con hidden
sólo uso
$('#delete1').nextAll('[id^="hidden"]:first').attr('id')
para recuperar sólo la primera ocurrencia, ver http://jsbin.com/usowej/4/edit
Otros consejos
Puede usar nextAll(selector)
para obtener los siguientes hermanos después del elemento:
var id = $('#delete1').nextAll("div[id^='hidden']").prop('id');
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow