all()函数在Firefox中不起作用

时间:2011-07-18 08:28:25

标签: javascript

在IE下面的行正在运行。 popup是一个div元素。

popup.all("submenu").innerHTML = "";

但在其他浏览器中,错误即将到来

  

popup.all不是一个函数。

其他浏览器中的所有功能是否有其他选择。

请建议我。感谢。

4 个答案:

答案 0 :(得分:1)

大多数浏览器都不支持所有方法。 IE浏览器除外。测试document.getElementById如果为false,则使用“all”方法。

答案 1 :(得分:1)

在所有浏览器(包括Internet Explorer)中,您需要按DOM树中的位置查找项目(我假设它是一个给定.innerHTML属性的DOM节点)。例如,您可以使用document.getElementById()document.getElementsByTagName()。当然,您始终可以在常规变量中存储对节点的引用。

答案 2 :(得分:0)

试试这个:

var popup=document.getElementById('popup');
for (i in popup.childNodes) {
   if (popup.childNodes[i].nodeType == 1) {
       popup.childNodes[i].innerHTML = '';
   }
}

答案 3 :(得分:0)

改为使用document.getElementById(elementName).innerHTML = whatever;