在用Firefox查看以前用javascript写的菜单,发现不起作用,用Javascript Console查看,发现有一堆错误和警告。主要是:
1. document.all
Firefox可以兼容document.all, 但会生成一条警告。可以用getElementById("*") 或者 getElementByTagName("*)来代替
不过对于document.all.length等属性,则完全不兼容。
2. parentElement
这个也不兼容。比方说, obj.parentElement.name 则应改成 obj.parentNode.attributes.getNamedItem("name").nodeValue (不知道如何写得更简洁些)
3. event
W3C不支持windows.event
比方说:
在IE里面
<div class="menu" id="menu" onclick="onMenuClick(); ">.....</div>
function onMenuClick()
{
collapseMenu(event.srcElement);
}
工作正常。不过在Firefox中,则改成:
<div class="menu" id="menu" onclick="onMenuClick(event); ">
function onMenuClick(evt)
{
if(evt == null)
evt = window.event; // For IE
var srcElement = evt.srcElement? evt.srcElement : evt.target; // IE使用srcElement, 而Firefox使用target
collapseMenu(srcElement);
}
参考
http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/core.html#ID-1590626202
1. document.all
Firefox可以兼容document.all, 但会生成一条警告。可以用getElementById("*") 或者 getElementByTagName("*)来代替
不过对于document.all.length等属性,则完全不兼容。
2. parentElement
这个也不兼容。比方说, obj.parentElement.name 则应改成 obj.parentNode.attributes.getNamedItem("name").nodeValue (不知道如何写得更简洁些)
3. event
W3C不支持windows.event
比方说:
在IE里面
<div class="menu" id="menu" onclick="onMenuClick(); ">.....</div>
function onMenuClick()
{
collapseMenu(event.srcElement);
}
工作正常。不过在Firefox中,则改成:
<div class="menu" id="menu" onclick="onMenuClick(event); ">
function onMenuClick(evt)
{
if(evt == null)
evt = window.event; // For IE
var srcElement = evt.srcElement? evt.srcElement : evt.target; // IE使用srcElement, 而Firefox使用target
collapseMenu(srcElement);
}
参考
http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/core.html#ID-1590626202
在用Firefox查看JavaScript写的菜单时发现不起作用,存在诸多错误和警告。如document.all、parentElement不兼容,W3C不支持windows.event等,并给出了相应的替代方法和处理方式,还提供了参考链接。

被折叠的 条评论
为什么被折叠?



