Computer >> 컴퓨터 >  >> 프로그래밍 >> HTML

HTML DOM MenuItem 객체 – 주요 속성과 사용 예제 총정리

HTML DOM의 MenuItem 객체는 HTML 문서 내의 <menuitem> 요소를 나타냅니다. 이 객체를 사용하면 컨텍스트 메뉴(우클릭 메뉴) 항목에 동적으로 접근하고 조작할 수 있습니다.

참고<menuitem> 요소는 오직 Mozilla Firefox 브라우저에서만 지원됩니다. 또한 해당 요소는 현재 HTML 표준에서 폐기(deprecated)된 상태이므로, 실무에서는 크로스 브라우저 호환성을 고려한 대안을 사용하는 것이 좋습니다.

문법(Syntax)

<menuitem> 요소를 생성하는 기본 문법은 다음과 같습니다.

var menuItemObject = document.createElement("MENUITEM")

주요 속성(Properties)

MenuItem 객체에서 사용할 수 있는 주요 속성은 다음과 같습니다.

속성설명
checked메뉴 항목이 선택(체크) 상태인지 여부를 설정하거나 반환합니다 (true/false)
commandcommand 속성의 값을 설정하거나 반환합니다
default해당 메뉴 항목이 기본(default) 항목인지 여부를 설정하거나 반환합니다
disabled메뉴 항목의 비활성화 여부를 설정하거나 반환합니다
icon메뉴 항목을 나타내는 아이콘 이미지를 설정하거나 반환합니다
label메뉴 항목의 label 속성 값을 설정하거나 반환합니다
radiogroup메뉴 항목의 radiogroup 속성 값을 설정하거나 반환합니다
type메뉴 항목의 type 속성 값을 설정하거나 반환합니다

예제(Example)

다음은 HTML DOM MenuItem 요소를 활용한 실제 예제입니다. 폼(form) 위에서 마우스 오른쪽 버튼을 클릭하면 컨텍스트 메뉴가 나타나고, 각 메뉴 항목을 클릭하면 현재 URL 정보를 화면에 표시합니다.

<!DOCTYPE html>
<html>
<head>
<title>Menu Object</title>
<style>
   form {
      width:70%;
      margin: 0 auto;
   text-align: center;
   }
   * {
      padding: 2px;
      margin:5px;
   }
   input[type="button"] {
      border-radius: 10px;
   }
</style>
</head>
<body>
<form contextmenu="MENU">
<fieldset>
<legend>Menu-Object</legend>
<label for="urlSelect">Current URL:</label>
<input type="url" size="30" id="urlSelect" value="https://www.example.com/aboutUs">
<div id="divDisplay"></div>
</fieldset>
<menu type="context"
id="MENU">
<menuitem label="Get URL"
onclick="contextFunction(1);">
</menuitem>
<menuitem label="Get Hostname"
onclick="contextFunction(2);">
</menuitem>
</menu>
</form>
<script>
   var divDisplay = document.getElementById("divDisplay");
   var urlSelect = document.getElementById("urlSelect");
   function gethref(){
      divDisplay.textContent = 'URL Path: '+location.href;
   }
   function getHostname(){
      divDisplay.textContent = 'Hostname: '+location.hostname;
   }
   function contextFunction(role){
      if(role === 1)
         this.gethref();
      else
         this.getHostname();
   }
</script>
</body>
</html>

실행 결과(Output)

위 코드를 실행하면 다음과 같은 결과를 확인할 수 있습니다.

1. 폼 위에서 마우스 오른쪽 버튼 클릭 시 − 컨텍스트 메뉴가 나타납니다.

HTML DOM MenuItem 객체 – 주요 속성과 사용 예제 총정리

2. 컨텍스트 메뉴에서 'Get Url' 항목 클릭 시 − 현재 페이지의 전체 URL 경로가 표시됩니다.

HTML DOM MenuItem 객체 – 주요 속성과 사용 예제 총정리

3. 컨텍스트 메뉴에서 'Get Hostname' 항목 클릭 시 − 현재 페이지의 호스트명이 표시됩니다.

HTML DOM MenuItem 객체 – 주요 속성과 사용 예제 총정리