Я генерирую 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);
....
}
Почему!?На помощь!!
В IE и Chrome, event
разрешается в window.event
. Firefox не имеет этого свойства и вместо этого предоставляет событие функции обработчика событий, передавая его в качестве параметра. jQuery абстрагирует эту разницу для вас, предоставляя параметр объекта события во всех браузерах:
$("<a />")
.append("demo")
.click(function (evt) { DemoFunc(evt, value.Id) });