событие не определяется в FireFox, но хорошо в Chrome и IE

Я генерирую HTML с помощью jQuery:

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

Это работает идеально подходящее для Chrome и IE8, но в FireFox я получил ошибку: "событие не определяется". Я изменил код как это:

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

Это работает на Firefox, но не на Chrome и IE.

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

Почему!?На помощь!!

18
задан podeig 4 June 2010 в 13:35
поделиться

1 ответ

В IE и Chrome, event разрешается в window.event. Firefox не имеет этого свойства и вместо этого предоставляет событие функции обработчика событий, передавая его в качестве параметра. jQuery абстрагирует эту разницу для вас, предоставляя параметр объекта события во всех браузерах:

$("<a />")
    .append("demo")
    .click(function (evt) { DemoFunc(evt, value.Id) });
36
ответ дан 30 November 2019 в 07:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: