Есть ли в JavaScript способ переопределить событие, но по-прежнему вызывать исходный код события? Я в основном хочу добавить одну строку кода в конец. Так например:
Исходная функция
function DropDownList_OnFocus(a, b) {
// Original Code
}
Что мне нужно
function DropDownList_OnFocus(a, b) {
// Original Code
// New Code
}
2 ответа
Обработчики событий всегда выполняются последовательно в том порядке, в котором они были связаны.
Таким образом, вы можете просто добавить другой обработчик событий для того же события в тот же элемент и поместить дополнительный / оставшийся код во второй обработчик событий.
Мне удалось заставить его работать, используя следующее:
var base = DropDownList.OnFocus;
var DropDownOnFocusOverride = (function () {
return function () {
base();
// Additional Code
}
});
DropDownList.OnFocus = DropDownOnFocusOverride();
Похожие вопросы
Связанные вопросы
Новые вопросы
javascript
По вопросам программирования на ECMAScript (JavaScript/JS) и его различных диалектах/реализациях (кроме ActionScript). Обратите внимание, что JavaScript — это НЕ Java. Включите все теги, относящиеся к вашему вопросу: например, [node.js], [jQuery], [JSON], [ReactJS], [angular], [ember.js], [vue.js], [typescript], [стройный] и т. д.