본문 바로가기
Coding/JavaScript

[JavaScript] 토글 스위치로 전구 Turn On/Off 하기 !!

by 포스트it 2024. 2. 22.
728x90

 

[JavaScript] 토글 스위치로 전구 Turn On/Off 하기 !!

2021.07.21 - [Coding/JavaScript] - [JavaScript] 버튼 Onclick 이벤트로 전구 Turn On/Off 하기 !!

 

[JavaScript] 버튼 Onclick 이벤트로 전구 Turn On/Off 하기 !!

JavaScript 버튼 Onclick 이벤트로 전구 Turn On/Off 하기 !! 켜진 전구사진과 꺼진 전구 사진을 구합니다 ! JavaScript로 전구 Turn On/Off 하기 !! ON OFF 결과값 JavaScript로 전구 Turn On/Off 하기 !! ON OFF

seill.tistory.com

 

이전글에 토글 방식이 보고 싶다는 요청이 들어와서 만들어봤습니다 ㅎ

 

예제코드
<h2>JavaScript로 전구 Turn On/Off 하기 !!</h2>

<img id="bulb" src="https://blog.kakaocdn.net/dna/PPwr9/btraexULT6l/AAAAAAAAAAAAAAAAAAAAAGpw-HmIcPEEGr9GIgEanl_XkWouwasYChtov4ErLpQ5/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&expires=1769871599&allow_ip=&allow_referer=&signature=J24k5Ik5evBVnNrhUAfBCeWNFZw%3D" style="width:100px">

<label class="switch">
  <input type="checkbox" onclick="toggleBulb()">
  <span class="slider round"></span>
</label>

<style>
.switch {
  position: relative;
  display: inline-block;
  width: 60px;
  height: 34px;
}

.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  -webkit-transition: .4s;
  transition: .4s;
}

.slider:before {
  position: absolute;
  content: "";
  height: 26px;
  width: 26px;
  left: 4px;
  bottom: 4px;
  background-color: white;
  -webkit-transition: .4s;
  transition: .4s;
}

input:checked + .slider {
  background-color: #2196F3;
}

input:focus + .slider {
  box-shadow: 0 0 1px #2196F3;
}

input:checked + .slider:before {
  -webkit-transform: translateX(26px);
  -ms-transform: translateX(26px);
  transform: translateX(26px);
}

/* Rounded sliders */
.slider.round {
  border-radius: 34px;
}

.slider.round:before {
  border-radius: 50%;
}
</style>

<script>
function toggleBulb() {
  var bulb = document.getElementById('bulb');
  var bulbOn = "https://blog.kakaocdn.net/dna/dzFzMx/btrac8VsbSt/AAAAAAAAAAAAAAAAAAAAAIYbFn6wSLlUhv6jPtB2PU72XDfbfHRfEnl24urm3wkR/img.jpg?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&expires=1769871599&allow_ip=&allow_referer=&signature=Up0kjn4n2lZuNEI5bW6C%2FQAbrew%3D"; // 전구 켜짐 이미지 URL
  var bulbOff = "https://blog.kakaocdn.net/dna/PPwr9/btraexULT6l/AAAAAAAAAAAAAAAAAAAAAGpw-HmIcPEEGr9GIgEanl_XkWouwasYChtov4ErLpQ5/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&expires=1769871599&allow_ip=&allow_referer=&signature=J24k5Ik5evBVnNrhUAfBCeWNFZw%3D"; // 전구 꺼짐 이미지 URL

  // 현재 전구 상태에 따라 이미지 소스를 토글
  if (bulb.src === bulbOff) {
    bulb.src = bulbOn; // 전구가 꺼져있으면 켜기
  } else {
    bulb.src = bulbOff; // 전구가 켜져있으면 끄기
  }
}
</script>

결과값

 

JavaScript로 전구 Turn On/Off 하기 !!

반응형

댓글