把窗口width显示在页面上,如下代码怎么不行?谢谢

<!DOCTYPE html>
<html>
<head>
    <style>
    
    </style>
</head>
<body>
    <div class="hh">111</div>
   

</body>
    <script>
    window.onresize=function(){
        m=document.getElementsByClassName("hh")
        m.innerHTML=window.screen.width
    }
    </script>
</html>
阅读 1.4k
2 个回答
 window.onresize=function(){
        m=document.getElementsByClassName("hh") 
        // 注意,这个m是个集合,类数组
        m[0].innerHTML=window.screen.width
    }
    </script>

document.getElementsByClassName返回一个HTMLCollection,一个元素的集合。而innerHTML是元素上的方法。要使用必须从得到的HTMLCollection中取出一个元素,即 PeChen 提到的处理类数组的方法,比较简单、普遍。或者使用标准明确定义的HTMLCollection.item(index),也可以得到元素。

需要注意的地方有,innerHTML会尝试解析文本为元素,在已知要使用文本时不推荐使用,安全上和性能上都不如innerTexttextContentinnerText还会解析换行为<br>,所以在这里建议使用textContent。详细区别还很多,建议参考链接。


  1. innerText vs innerHTML vs label vs text vs textContent vs outerText
推荐问题
宣传栏