javascript で兄弟ノードをトラバースしたい。私は document.getElementById を使用し、その兄弟にテキスト コンテンツがあるかどうかを確認したいと考えています。そうでない場合は、親ノードの兄弟を確認したいと思います。
<!DOCTYPE html>
<html>
<head>
<script>
function changeSize()
{
var x=document.getElementById("compman");
if (x.parentNode && x.parentNode.textContent) {
alert("My input has a value!");
}
y=x.nextSibling;
alert(y.nodeValue);
alert(x.parentNode.textContent);
}
</script>
</head>
<body>
<a href="http://sample_url" id="pd_cp_mov_0_B004JMY312" >
<img src="http://samplepic.jpg" width="50" alt="" class="faceout" height="50" border="0" id="compman">
<span class="cpAsinTitle">Hocus Pocus</span>
<div>
sample text
</div>
</a>
<p>test content</p>
<p class="s2"> sample content 2 </p>
<br><br>
<input type="button" onclick="changeSize()" value="Change size of image">
</body>
</html>
上記の内容で img タグを取得しています。次に、兄弟にテキスト コンテンツがあるかどうかを確認します。この場合、値は Hocus Pocus です。テキスト値がない場合は、親の兄弟を確認したいと思います。したがって、テスト コンテンツを返す必要があります。