3
jQuery가 jqLite를 대체하므로 jQuery를 사용하지 않고 jQuery를 사용하여 jQuery를 사용하지 않고 jQuery를 사용하지 않고 내 AngularJS 앱을 테스트하고 싶습니다. jQuery는 사용할 수 없습니다. jQuery와 jqLite에는 실제 차이가 있으므로 유닛 테스트에서 AngularJS에 jQuery를 사용할 수있는 위험이 있습니다.jquery없이 이스케이프 키 누르기 시뮬레이션
대부분의 테스트는 jQuery 없이도 잘 작동하지만 escape 키의 keydown을 트리거해야합니다. 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