jqueryを使用してクリックされた要素のインデックスを取得したい-これは簡単なはず.index()
ですが、のような狭く定義されたセレクター内にインデックスを入れたくありません$('div').index()
。
私が欲しいのは、ページ上/DOM内のその要素の一意のインデックスです-$(everything).index()
それが存在した場合のようなものです。
これが私の単純なjqueryクリック関数です:
$("div").click(function (e) {
e.stopPropagation();
index = $(this).index();
});
いくつかのサンプルHTMLで使用したもの:
<div>DIV 0 - I want to show as index=0 (which I do)</div>
<div>DIV 1 - I want to show as index=1 (which I do)</div>
<span>SPAN 0 - I want to show as (span) index=0</span>
<div>DIV 2 - I want to show as index=2 (but I don't, I show as 3)
<div>DIV 3 - I want to show as index=3 (but I don't, I show as 0)</div>
<span>SPAN 1 - I want to show as (span) index=1</span>
<span>SPAN 2 - I want to show as (span) index=2</span>
</div>
私はそれで遊ぶためにJSfiddledをしました。
私の問題はこれらです:
1)これらのDIVS(またはその他の要素)の一意のインデックス番号を取得する方法がわかりません。これは$(this)
、現在の選択のみを参照しているため、埋め込まれたDIVは、クリックするとゼロで再インデックスされます。
2)これがANY / ALL htmlタグ(DIVだけでなく)で機能するために必要です
あなたが与えることができるどんな助けにも感謝します!