このjQueryツリートラバースを簡単にする方法
-
12-12-2019 - |
質問
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');
.
リンク「#delete1」の後に「隠し」から始めて、最も近い "DIV"のIDを取得したいのですが。
この以前のコードは働いていますが、それをするよりも簡単な方法があると思います。
解決
$('#delete1').nextAll('[id^="hidden"]').attr('id')
.
nextAll()
が十分
例jsbin: http://jsbin.com/usowej/3/edit
注:
を使用するだけでIDが始まる要素が複数ある場合$('#delete1').nextAll('[id^="hidden"]:first').attr('id')
.
最初の出現のみを取得するには、 http://jsbin.com/usowej/4/dit
他のヒント
要素の後に次の兄弟を取得するには、nextAll(selector)
を使用できます。
var id = $('#delete1').nextAll("div[id^='hidden']").prop('id');
.
href="http://api.jquery.com/nextall/" rel="nofollow">>>> http://api.jquery.com/nextall/
所属していません StackOverflow