0

可能重复:
window.event.srcElement 不适用于 Firefox?

我制作了一个可以在 Chrome 上正常工作的网页,但在 Firefox 上却不行。这是代码:

function set_email_params(e){
if(!e)
    e=window.Event;   //window.event appeared to be "undefined" so I had to use Event
alert(e.target);        //shows "undefined"
alert(e.target.src);
if(e.target.src.indexOf("unchecked")>-1)
    e.target.src='images/small_radio_checked.png';
else
    e.target.src='images/small_radio_unchecked.png';
}

以下是该函数的调用方式:

  <img onclick="set_email_params()" src="images/small_radio_unchecked.png" style="float:left;"/>

此代码在 Chrome 上完美运行。请帮我。

4

1 回答 1

3

您没有event在处理程序中传递对象。

onclick="set_email_params(event)"
   <!---------------------^^^^^--------->

在符合标准的浏览器中,事件处理程序最终看起来像这样:

function(event) {
    set_email_params(event);
}

在较旧的 IE 中,它看起来更像这样:

function() {
    set_email_params(event);
}

所以无论哪种方式,事件对象都会被传递。

于 2012-11-19T21:40:40.067 回答