cfk0621 发表于 2008-5-4 16:39

JavaScript问题

document.all.length 这句话是什么意思啊!帮忙解释解释!

编程之星 发表于 2008-5-4 23:57

根据字面意思貌似是--获取页面中所有控件的数量,返回一个整型值表示页面中共有多少个控件。

hwoarangzk 发表于 2008-5-5 11:41

不只是控件哦

kevintang 发表于 2008-5-5 13:15

楼上的大哥!那你告诉我还有什么东西啊?

kingyar 发表于 2008-5-5 15:29

document.all是大概从IE4.0开始提供的一个特性,它是包含页面上所有标签元素的数组。也就是说,当IE解析页面时,遇到一个标签,就会将其放入document.all中。document.all.length就是页面上所有标签的数量。

看简单的例子:
<head>
    <title>Untitled Page</title>   
    <script language="javascript">
    window.onload = function()
    {
        var text = "";
        var count = document.all.length;
        for (var i=0; i < count; ++i)
        {
            text += "<br/>#" + i + ": " + document.all[i].tagName;
        }
        
        var divContainer = document.createElement("div");
        divContainer.innerHTML = text;
        document.body.appendChild(divContainer);
    }
    </script>
</head>
<body>
    <select multiple size="2">
        <option value="1">hello</option>
        <option value="2">world</option>
    </select>
</body>
</html>
存成test.html页面,在IE中打开,会看到如下输入:
#0: HTML
#1: HEAD
#2: TITLE
#3: SCRIPT
#4: BODY
#5: SELECT
#6: OPTION
#7: OPTION

因为这个document.all特性是IE特有的,所以使用document.all的代码在firefox, opera, safari中会产生异常,无法运行。

cfk0621 发表于 2008-5-5 17:12

3Q

谢谢各位朋友的帮助,我明白了!

页: [1]

编程论坛