ページの一部の要素を非表示にするために 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>