親の子のインデックスを取得しようとしています。例えば:-
<div>
<table>
<tr id="rahul">
<td> Hi this is ABC </td>
<td> Hi this is XYZ </td>
</tr>
</table>
</div>
そして私のJavaスクリプトコードは次のとおりです:-
<script>
$(document).ready(function() {
document.onmousedown = mouseDown;
function mouseDown(e) {
var element = document.elementFromPoint(e.clientX,e.clientY);
console.log("Clicked element is:" + element.tagName);
var i=1;
while (element.nextSibling != null) {
element = element.nextSibling;
console.log('Sibling No:' + (i++) + " " + element.tagName);
}
}
});
</script>
私によると「こんにちはこれはABCです」をクリックすると、印刷されます
Sibling No.1 TD
でも実は印刷です
Clicked element is:TD jsoupTest.html:10
Sibling No:1 undefined jsoupTest.html:14
Sibling No:2 TD jsoupTest.html:14
Sibling No:3 undefined
なぜこれがTDの兄弟として未定義で印刷されているのか疑問が生じますか?そして、私の考えは、クリックされた要素が持っている兄弟の数を見つけることであり、その親が持っている子の総数を見つけることができます。これで、親の子の総数から兄弟の数を引くことで、クリックされた要素のインデックスを見つけることができます。
これを取得するためのより良い代替手段があるかどうか教えてください。