JavaScript适用于IE,但不适用于Firefox

kbe*_*son 4 javascript firefox firebug internet-explorer

同样旧的相同旧,我的JavaScript在IE中运行正常,但不适用于Firefox.我已经按照所有表格,检查了所有论坛和回复,以及我编写的内容应该有效,但事实并非如此.Firebug将值显示为"未定义".

这就是我所拥有的; 它从一个更大的应用程序缩小,但它显示了同样的问题:

<html>
<head>
<script type="text/javascript">
function show_alert(evt)
{
if( !evt )
    evt = window.event;

var eSrc;
if( evt.srcElement )
    eSrc = evt.srcElement;
else
    eSrc = evt.target;

if( eSrc.tableisloaded == "showAlert" ) 
    alert("alert box: " + eSrc.name + "|" + eSrc.type);
}

</script>
</head>
<body>

<input type="button" name="clickme" tableisloaded="showAlert"
 onclick="show_alert(event);" value="Show alert box" />

 </body>
</html>
Run Code Online (Sandbox Code Playgroud)

当我在IE中运行它时,我收到警报,这意味着它正在查找"tableisloaded"参数.Firebug并没有显示出一切.

那么我做错了什么,是否有办法获取参数?我需要将其更改为参数(onclick="show_alert(event,"showAlert");)吗?我希望不要因为它需要重写大量代码.

谢谢

Poi*_*nty 11

尝试 eSrc.getAttribute("tableisloaded")

此外,如果你想要时髦和时髦,你可以考虑让你的页面HTML5并调用你的额外属性"data-tableIsloaded".这样它就会验证.