1

我在使用这个 Javascript 代码时遇到了 w3c 验证错误,想知道一位善良的绅士/女士是否会抽出一点时间来看看。

// hide all element nodes within some parent element
function hideAll(parent) {
    var children = parent.childNodes, child;
    // loop all the parent's children
    for (var idx=0, len = children.length; idx<len; ++idx) { /* ERROR HERE */
        child = children.item(idx);
        // if element node (not comment- or textnode)
        if (child.nodeType===1) {
            // hide it
            child.style.display = 'none';
        }
    }
}

错误是:

  • 元素“len”未定义
  • 特点 ”;” 属性规范列表中不允许

分号 atidx<len;是出错的地方。

有人可以解释我在上面的代码片段中哪里出错了吗?

非常感谢。

4

2 回答 2

1

将其更改为:

// hide all element nodes within some parent element
function hideAll(parent) {
    var children = parent.childNodes, child;
    // loop all the parent's children
    var len = children.length;
    for (var idx=0; idx<len; ++idx) { /* ERROR HERE */
        child = children.item(idx);
        // if element node (not comment- or textnode)
        if (child.nodeType===1) {
            // hide it
            child.style.display = 'none';
        }
    }
}
于 2012-04-26T10:04:28.607 回答
1
          **// hide all element nodes within some parent element



             function hideAll(parent) 
             {
                var children = parent.childNodes, child;

                // loop all the parent's children
                var len=children.length;

                 for (var idx=0; idx<len; ++idx) 
                 { /* ERROR HERE */

                   child = children.item(idx);

                    // if element node (not comment- or textnode)

                     if (child.nodeType===1) 
                     {
                         // hide it
                         child.style.display = 'none';
                     }
                } 
         }**
于 2012-04-26T10:11:16.573 回答