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

HTML DOM Meter 객체 완벽 가이드 – 주요 속성과 value 속성 예제

HTML DOM의 Meter 객체는 HTML의 <meter> 요소를 JavaScript에서 다룰 수 있도록 해주는 인터페이스입니다. <meter> 요소는 특정 범위 내에서 값이 어느 정도인지 시각적으로 보여주는 게이지(gauge) 역할을 합니다.

참고: <meter> 요소는 진행 상황을 나타내는 프로그레스 바(progress bar)로 사용해서는 안 되며, 오직 게이지(측정기) 용도로만 사용해야 합니다. 디스크 사용량, 배터리 잔량, 설문 결과 비율 등 현재 값의 위치를 표현할 때 적합합니다.

Meter 객체 생성 문법

JavaScript로 새로운 <meter> 요소를 만들려면 다음과 같이 작성합니다.

var meterObject = document.createElement("METER")

Meter 객체의 주요 속성

생성된 meterObject는 아래 표와 같은 속성들을 가질 수 있습니다.

속성설명
high게이지에서 '높음'으로 간주되는 경계값(high 속성)을 설정하거나 반환합니다.
labels해당 게이지의 레이블 역할을 하는 <label> 요소들의 목록(NodeList)을 반환합니다.
low게이지에서 '낮음'으로 간주되는 경계값(low 속성)을 설정하거나 반환합니다.
max게이지가 나타낼 수 있는 최대값(max 속성)을 설정하거나 반환합니다.
min게이지가 나타낼 수 있는 최소값(min 속성)을 설정하거나 반환합니다.
optimum게이지에서 가장 이상적인 값(optimum 속성)을 설정하거나 반환합니다.
value게이지의 현재 값(value 속성)을 설정하거나 반환합니다.

이 중 high, low, optimum 속성은 게이지의 색상 표시에 영향을 줍니다. 현재 값이 low 이하이거나 high 이상이면 브라우저가 노란색 또는 빨간색 등으로 구분하여 표시할 수 있습니다.

예제: Meter value 속성 활용하기

다음은 Meter 객체의 value 속성을 읽고 변경하는 예제입니다. 버튼을 클릭하면 게이지의 현재 값이 10으로 변경되며, 변경 전후의 값이 화면에 출력됩니다.

<!DOCTYPE html>
<html>
<head>
<title>Meter value</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>
      <fieldset>
         <legend>Meter-value</legend>
         <label for="paulaLifeSource">Paula's Health Risk: </label>
         <meter id="paulaLifeSource" max="100" min="0" high="80" value="75" low="70" value="85">               </meter>
         <input type="button" onclick="lifeSource()" value="Reduce">
         <div id="divDisplay"></div>
   </fieldset>
</form>
<script>
   var divDisplay = document.getElementById("divDisplay");
   divDisplay.textContent = 'Life Source at '+paulaLifeSource.value;
   function lifeSource(effect){
      var paulaLifeSource = document.getElementById("paulaLifeSource");
      var Immunity = paulaLifeSource.value;
      paulaLifeSource.value = 10;
      divDisplay.textContent = 'value changed to '+paulaLifeSource.value+' from '+Immunity;
   }
</script>
</body>
</html>

실행 결과

'Reduce' 버튼 클릭 전 − 게이지에 초기 값이 그대로 표시됩니다.

HTML DOM Meter 객체 완벽 가이드 – 주요 속성과 value 속성 예제

'Reduce' 버튼 클릭 후 − value 속성이 10으로 변경되어 게이지가 낮아지고, 변경 전후 값이 텍스트로 출력됩니다.

HTML DOM Meter 객체 완벽 가이드 – 주요 속성과 value 속성 예제

이처럼 Meter 객체의 value 속성을 활용하면 페이지 로딩 후에도 동적으로 게이지 값을 읽거나 수정할 수 있어, 대시보드나 상태 모니터링 UI를 구현할 때 유용하게 사용할 수 있습니다.