Chrome ๋ฐ Firefox์์๋ ์ํํ๊ฒ ์คํ๋๋ ๋ค์ ํ ์คํธ๊ฐ ์์ง๋ง IE 10์์๋ ์คํ๋์ง ์์ต๋๋ค. ๋ง์ ์๊ฐ์ ๋ณด๋ธ ํ ๊ฐ๋ณ ํค๊ฐ ์ ๋๋ก ์๋ํ์ง๋ง CONTROL๊ณผ SHIFT๋ฅผ ํจ๊ป ์ฌ์ฉํ๋ฉด ์๋ํ์ง ์๋๋ค๋ ๊ฒ์ ์์์ต๋๋ค.
it('Should open panel with CTRL + SHIFT + 3', function() {
browser.actions().sendKeys(protractor.Key.chord(protractor.Key.CONTROL, protractor.Key.SHIFT, '3')).perform();
expect(browser.getCurrentUrl()).toContain('&menu=panel');
});
keypress.js ์ ๋ ฅ ์บก์ฒ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๊ณ ๋ค์๊ณผ ๋์ผํ ์ด๋ฒคํธ๋ฅผ ๋ฐ์ธ๋ฉํฉ๋๋ค.
window.keypress['options'] = {is_solitary: true, prevent_repeat: true};
var listener = new window.keypress.Listener(document, window.keypress.options);
listener.simple_combo("ctrl shift 3", function(e) {
alert('Hurrey..!');
});
๋ด๊ฐ ์ฌ๊ธฐ์ ๋ญ๊ฐ ์๋ชปํ๊ณ ์์ต๋๊น? ์ ์ํ์ญ์์ค.
IE11์์ requireWindowFocus: true๋ฅผ ์ฌ์ฉํ์ง ์์ผ๋ฉด ๋ค์ ๋ ๊ฐ์ง ์์ ๊ฐ์ด CTRL+SHIFT ์์ ์๊ฐ ์๋ํ์ง ์์ต๋๋ค.
browser.actions()
.keyDown(protractor.Key.CONTROL)
.mouseMove(element(by.id(...)))
.click()
.keyUp(protractor.Key.CONTROL)
.perform();
browser.actions().mouseMove(this.getLanguage(name))
.keyDown(protractor.Key.SHIFT)
.click()
.keyUp(protractor.Key.SHIFT)
.perform();
์ธ๋ถ ๋ฒ๊ทธ๊ฐ ์ ์๋์๊ณ ์ฐ๋ฆฌ ์ ์ฅ์์์๋ ์ด๋ฅผ ์ถ์ ํ๋ ๋ฐ ๋ง์ ๊ฐ์น๋ฅผ ์ ๊ณตํ์ง ์๊ธฐ ๋๋ฌธ์ ๊ณ์ ์งํํ๊ณ ๋ซ์ ๊ฒ์ ๋๋ค.