事件没有在FireFox中定义,但在Chrome和IE中可以使用?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (51)

我使用jQuery生成HTML:

$("<a />")
    .append("demo")
    .click(function () { DemoFunc(event, value.Id) })

这对于Chrome和IE8来说是完美的,但是在Firefox中我得到了一个错误:“事件没有定义”。我就这样修改了代码:

.attr("onclick", "DemoFunc(event, " + value.Id + ")")

它适用于火狐,但不适用于Chrome和IE。

DemoFunc = function (e, assocGroupId) {
    var target = (e.target) ? $(e.target) : $(e.srcElement);
    ....
}

为什么!?救命!!

提问于
用户回答回答于

如果你已经围绕使用原始事件而不是jQuery事件来构建代码,则可以使用evt.originalEvent引用本地事件。

用户回答回答于
$("<a />")
    .append("demo")
    .click(function (evt) { DemoFunc(evt, value.Id) });

所属标签

可能回答问题的人

  • 天使的炫翼

    17 粉丝531 提问36 回答
  • 富有想象力的人

    3 粉丝0 提问30 回答
  • 学生

    3 粉丝476 提问28 回答
  • o o

    4 粉丝494 提问27 回答

扫码关注云+社区

领取腾讯云代金券