[解決済み] JavaScript DOM: コンテナ内の要素インデックスを検索する
2023-03-11 23:20:44
質問
オブジェクトの参照によってコンテナ内の要素のインデックスを見つける必要があります。不思議なことに、私は簡単な方法を見つけることができません。jQueryはありません - DOMだけにしてください。
UL
LI
LI
LI - my index is 2
LI
はい、私は各要素にIDを割り当て、IDに一致するようにすべてのノードを介してループすることができますが、それは悪い解決策のように思われます。何かもっといい方法はないでしょうか?
上の例のように、3番目のLIへのオブジェクト参照を持っているとします。それがインデックス 2 であることをどのようにして知ることができますか?
ありがとうございます。
どのように解決するのですか?
を使用することができます。
Array.prototype.indexOf
. そのためには、多少 "キャスト"する必要があります。
HTMLNodeCollection
を真の
Array
. 例えば
var nodes = Array.prototype.slice.call( document.getElementById('list').children );
では、呼び出せばいいだけです。
nodes.indexOf( liNodeReference );
例
var nodes = Array.prototype.slice.call( document.getElementById('list').children ),
liRef = document.getElementsByClassName('match')[0];
console.log( nodes.indexOf( liRef ) );
<ul id="list">
<li>foo</li>
<li class="match">bar</li>
<li>baz</li>
</ul>
関連
-
[解決済み] jQueryで要素が非表示になっているかどうかを確認するには?
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] JavaScriptで文字列が部分文字列を含むかどうかを確認する方法は?
-
[解決済み] あるJavaScriptファイルを他のJavaScriptファイルにインクルードするにはどうすればよいですか?
-
[解決済み] 要素を水平方向にセンタリングする方法
-
[解決済み] 配列に特定のインデックスで項目を挿入する方法 (JavaScript)
-
[解決済み] JavaScriptで要素のクラスを変更するにはどうすればよいですか?
-
[解決済み] どのDOM要素にフォーカスがあるかを調べるには?
-
[解決済み】オブジェクトからプロパティを削除する(JavaScript)
-
[解決済み] Javascriptによるタッチスクリーンデバイスの検出
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] javascriptで2つの数値を連結する方法は?
-
[解決済み] 文字列が空白であるかどうかをチェックする
-
[解決済み] 文字列がhtmlであるかどうかをチェックする
-
[解決済み] react-routerのハッシュフラグメントからクエリパラメータを取得する
-
[解決済み] Promise : then vs then + catch [重複].
-
[解決済み] Chromeのwebkitインスペクタで「Unsafe JavaScript attempt to access frame with URL...」というエラーが継続的に発生する。
-
[解決済み] JavaScriptのArray.sort()メソッドでシャッフルするのは正しいのか?
-
[解決済み] Chrome拡張機能:popup.htmlを強制終了させる
-
[解決済み] これは純関数ですか?
-
[解決済み] JavaScriptデータフォーマット/プリティプリンタ