Запрет дальнейшей обработки событий внутри обработчика
Здравствуйте!
Почему нельзя запретить дальнейшую обработку событий по return false; ? Ext JS 5.1.0 - может баг этой версии экста? Например следующий код не запрещает браузеру выводить свое контекстное меню: Ext.onReady(function() { Ext.getBody().on("contextmenu", function() { Ext.Msg.alert("contextmenu", "contextmenu"); return false; }); }); ПС. И кстати, тут код вообще не работает https://fiddle.sencha.com/#fiddle/l2d Хотелось бы тоже понять почему. |
после Ext.getBody() не надо запускать getEl(), вам консоль об этом говорит:
TypeError: Ext.getBody(...).getEl is not a function http://docs.sencha.com/extjs/5.1/5.1...method-getBody Пустое тело не имеет высоты: alert(Ext.getBody().getHeight()); Остановить дефолтное поведение браузера помогает первый параметр, передаваемый в обработчик события: Ext.onReady(function() { var body = Ext.getBody(); alert(body.getHeight()); body.setHeight(1000); body.on("contextmenu", function(e) { e.stopEvent(); Ext.Msg.alert("fdfsd"); }); }); пример |
Спасибо! Чудеса, раньше было просто return false, а теперь какой-то спец-метод)))
|
Часовой пояс GMT +3, время: 10:09. |