У меня есть объект person, и я, по сути, хочу, чтобы он мог генерировать свои собственные события. Однако, если событие триггера имеет то же имя, что и прототип, Chrome выводит довольно большую ошибку. В приведенном ниже примере кода person.murder
вызывает событие murder
, которое выводит ошибку на консоль. (код имеет больше смысла).
function Person() {
}
Person.prototype.murder = function() {
$(this).trigger("murder");
}
И я вызываю триггер вот так
var barry = new Person();
$(barry).on("murder", function(){
alert("I am so angry");
})
barry.murder();
Таким образом, убийство Барри вызывает ошибку, однако, если событие было чем-то вроде personDied
, то ошибки нет. Правильно ли я запускаю событие? Я просто хочу убивать людей без ошибок.
Иногда ошибка возвращается в виде свернутого <error>
, а иногда в виде
Uncaught RangeError: превышен максимальный размер стека вызовов