[javascript] 키보드 단축키로 콘텍스트 메뉴 제어하기

이번에는 웹 애플리케이션에서 키보드 단축키를 사용하여 콘텍스트 메뉴를 제어하는 방법에 대해 알아보겠습니다.

HTML과 CSS 설정

우선, 아래는 콘텍스트 메뉴를 활성화하기 위한 간단한 HTML과 CSS 코드입니다.

<div id="context-menu">
  <ul>
    <li><a href="#">항목 1</a></li>
    <li><a href="#">항목 2</a></li>
    <li><a href="#">항목 3</a></li>
  </ul>
</div>
#context-menu {
  display: none;
  position: absolute;
  background: #fff;
  border: 1px solid #ccc;
  padding: 5px 0;
  list-style: none;
}

이 HTML과 CSS 코드는 콘텍스트 메뉴가 숨겨져 있고, 마우스 오른쪽 클릭 시에만 나타나도록 설정해줍니다.

JavaScript로 콘텍스트 메뉴 제어하기

이제, 키보드 입력을 감지하여 콘텍스트 메뉴를 나타내고 숨기는 JavaScript 코드를 추가해보겠습니다.

document.addEventListener('keyup', function(event) {
  if (event.key === 'c' && event.ctrlKey) {
    // 콘텍스트 메뉴를 보이거나 숨깁니다
    var contextMenu = document.getElementById('context-menu');
    if (contextMenu.style.display === 'none') {
      contextMenu.style.display = 'block';
    } else {
      contextMenu.style.display = 'none';
    }
  }
});

위 코드에서 keyup 이벤트를 사용하여 특정 키 입력 시 (여기서는 Ctrl + C) 콘텍스트 메뉴를 보였다가 숨기도록 설정했습니다.

마치며

이제 웹 애플리케이션에서 키보드 단축키를 이용하여 콘텍스트 메뉴를 제어하는 방법에 대해 알아보았습니다. 이를 응용하여 다양한 기능을 추가할 수 있을 것입니다.

관련 정보는 MDN 웹 문서에서 확인하실 수 있습니다.