@keydown.tab์ shift + tab๋ ์บก์ฒํฉ๋๋ค. ์ด๊ฒ์ด ์์๋ ํ๋์ ๋๊น? ๋ฒ๊ทธ๋ผ๋ฉด ๋ฐ์ฑํ๊ฒ ์ต๋๋ค.
์, ์์๋ฉ๋๋ค. shift๋ฅผ ๋๋ฅด์ง ์์๋์ง ๋ช ์์ ์ผ๋ก ํ์ธํด์ผ ํฉ๋๋ค.
์ด๋ฅผ ์ํํ๊ธฐ ์ํ ์๋ฃจ์ ๋งํฌ์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
<your-element @keydown.tab="handleTabPress(someData, $event)"></your-element>
ํธ๋ค๋ฌ ํจ์ ๋ด์์ $event
๋ฅผ ๊ฒ์ฌํ์ฌ SHIFT ๊ฐ ์ ์ง๋๋์ง ์ฌ๋ถ๋ฅผ ๊ฐ์งํ ์ ์์ต๋๋ค.
handleTabPress(someData, e) {
// if SHIFT key is held to navigate backwards, exit through this gate
if (e.shiftKey) {
console.log('halting event due to SHIFT+TAB');
return;
}
// otherwise, execute normal logic
console.log('tab was pressed', someData);
},
์ด๊ฒ์ ์ ๋ฐ์ดํธํ๊ธฐ ์ํด 2.5.0 vue์๋ .exact ์์ ์๊ฐ ์์ผ๋ฏ๋ก ์ ํํ ์ด ๋์์ ๋ฐฉ์งํฉ๋๋ค.
@keydown.tab.exact="dostuff()"
์ด๊ฒ์ shift + tab์ ๋๋ ์ ๋๊ฐ ์๋๋ผ tab์ ๋๋ ์ ๋๋ง ์๋ํฉ๋๋ค. ์์ธํ ๋ด์ฉ์ https://vuejs.org/v2/guide/events.html#exact -Modifier๋ฅผ ์ฐธ์กฐ
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
์ด๊ฒ์ ์ ๋ฐ์ดํธํ๊ธฐ ์ํด 2.5.0 vue์๋ .exact ์์ ์๊ฐ ์์ผ๋ฏ๋ก ์ ํํ ์ด ๋์์ ๋ฐฉ์งํฉ๋๋ค.
@keydown.tab.exact="dostuff()"
์ด๊ฒ์ shift + tab์ ๋๋ ์ ๋๊ฐ ์๋๋ผ tab์ ๋๋ ์ ๋๋ง ์๋ํฉ๋๋ค. ์์ธํ ๋ด์ฉ์ https://vuejs.org/v2/guide/events.html#exact -Modifier๋ฅผ ์ฐธ์กฐ