1

ページの一部の要素を非表示にするために getElementsByClassName を使用しようとしています。ここで最初の答えを使用しました:

複数の要素を非表示にするために getElementByClass を使用する代わりに何ができますか?

独自のコードを作成すると、Chrome と FF では機能しますが、IE9 では機能しません。私が読んだことはすべて、 getElementsByClassName が IE9 で動作するはずだと言っています。自分のコードを入れるのではなく、以下のコードは上記のリンクからの回答です。これは、自分のコードに似ていて、すでにコンパクトであるためです。これをIE9にロードすると、ボタンは何もしません(ChromeとFFでは問題ありません)。関数内のコードの周りに try と catch を配置すると、オブジェクト エラーと表示されます。それはうまくいくはずですか?

<head>
<script type="text/javascript">
function hideNames()
{
 var list = document.getElementsByClassName("webname");
for (var i = 0; i < list.length; i++) {
    list[i].style.display="none";
}
}

function showNames()
{
var list = document.getElementsByClassName("webname");
for (var i = 0; i < list.length; i++) {
    list[i].style.display="block";
}
}

</script>
</head>
<body>
<p class="webname">Webname</p>
<p class="webname">test</p>
<input type="button" onclick="hideNames()" value="Hide Web Names" />
<input type="button" onclick="showNames()" value="Show Web Names" />
</body>
4

1 に答える 1