Я бы хотел (unit) проверить мое приложение AngularJS, не прибегая к использованию jQuery, поскольку jQuery заменит jqLite, а в реальном приложении jQuery также не будет доступен. Существуют реальные различия между jQuery и jqLite, поэтому наличие jQuery, доступного для AngularJS в модульных тестах, является риском.Имитировать escape-нажатие клавиши без jquery
Большинство моих тестов отлично работают без jQuery, но мне нужно вызвать keydown для клавиши escape, что-то, что я могу узнать, как это сделать, используя jQuery. Как я могу сделать это в Javascript в режиме браузера?
директива прослушивает эвакуационных keydowns как это:
body.bind('keydown', handledEscapeKey);
var handledEscapeKey = function(e) {
if (e.which === 27) {
e.preventDefault();
scope.$apply(scope.hideTooltip());
}
};
Я попробовал это, но это не похоже на работу:
if(window.KeyEvent) {
var evObj = $document.createEvent('KeyEvents');
evObj.initKeyEvent('keydown', true, true, $window, false, false, false, false, 27, 0);
} else {
var evObj = $document.createEvent('UIEvents');
evObj.initUIEvent('keydown', true, true, $window, 1);
evObj.keyCode = 27;
}
elm[0][0].dispatchEvent(evObj);
как это поможет? – Maarten
Привет, у меня есть обновленная информация для вас –
, так что используйте это, а затем я могу выполнить тестирование этой части? – Maarten