47

なぜこれが機能しないのですか?

バニラJavaScriptを使用してbodyタグのスタイルを設定しますか?

<html>
   <body style="display:none;">
       test
   </body>
   <script>
       document.getElementsByTagName("body").style.display = "block";
   </script>
</html>
4

4 に答える 4

92

単一の要素ではなく、NodeListgetElementsByTagName()を返すためです。配列として扱います:

document.getElementsByTagName("body")[0].style.display = "block";

または、次の場合はさらに簡単ですbody

document.body.style.display = "block";
于 2013-03-20T09:21:01.573 に答える
6

bodyタグが必要な場合は、単に使用できますdocument.body。デモをご覧ください。

console.time("show body");
document.body.style.display = "none";

setTimeout(function () {
    console.timeEnd("show body");
    document.body.style.display = "block";
}, 3000);
<h1>Hello World!</h1>

于 2013-03-20T09:27:04.167 に答える
3

次のソリューションを使用しました。

<script>
    function changeDisplay(){
        document.body.style.display = 'block';
    }

    setTimeout(function () { changeDisplay(); }, 0);
</script>
于 2014-12-04T17:52:57.903 に答える