为什么Javascript不能识别HTML类属性?

时间:2010-05-03 22:42:37

标签: javascript

有人可以帮我解决一个Javascript问题吗?为什么以下代码仅显示带有“null”字样的消息框?而且我认为它们也不够。

<html>
<head>
    <script type="text/javascript">
        function showElementClasses(node)  {
            var els = node.getElementsByTagName("*");
            for(var i=0,j=els.length; i<j; i++)
                alert(els[i].getAttribute("class"));
                alert("Class: " + els[i].className);
        }

        showElementClasses(document);
    </script>
</head>
<body class="bla">
    <div class="myclass" style="width: 500; height: 400" id="map"></div>
</body>
</html>

3 个答案:

答案 0 :(得分:2)

此外,您在for(var i=0,j=els.length; i<j; i++)alert("Class: " + els[i].className);之后忘记了大括号。

答案 1 :(得分:2)

这很好用:

<html>
<head>
    <script type="text/javascript">
        function showElementClasses(node)  
        {

            alert("hello, world.");        
            var els = node.getElementsByTagName("*");
            for(var i=0,j=els.length; i<j; i++)
            {
                alert(els[i].getAttribute("class"));
                alert("Class: " + els[i].className);
            }
        }


    </script>
</head>
<body class="bla" onload="showElementClasses(document)">
    <div class="myclass" style="width: 500; height: 400" id="map" ></div>
</body>
</html>

答案 2 :(得分:1)

唯一的问题是您的alert("Class: " + els[i].className);语句未在for循环中运行。你需要纠正你的牙箍。