어둠사자

자바스크립트에 관한 궁금증...

  1. function name(id) {
  2. var Display = document.getElementById(id).style.display;
  3.     if(Display == "none") {
  4.         Display = "block";
  5.     }
  6.     else {
  7.         Display = "none";
  8.     }
  9. }

위와 같이 되어있을 때,
Display 변수가 if 까지(셋째 줄)는 잘 되지만, if 안에서는 적용이 되지 않는 이유가 뭘까요?

아 물런 적용이 안되서 그냥
document.getElementById(id).style.display = "block"; 로 쓰고있긴 합니다.
|

댓글 2개

var Display = document.getElementById(id).style.display;
이건 Display 란 변수에 스타일 값을 불러 들이는 것으로..
결국 Display 가 가지는 값은 단순 문자열 밖에 없습니다.

그래서
Display = "block";
해봐야 바뀌는건 없습니다.
Display 란 문자열 변수의 문자열 값만 바뀌는거죠..

var obj = document.getElementById(id);

# if(obj.style.display == "none") {
# obj.style.display = "block";
# }

위와 같이 해야겠죠..
위에서 obj는 엘리먼트를 가르키고.. 그 엘리먼트에 값을 집어 넣으면 적용 됩니다.
답변 감사합니다^^
댓글을 작성하시려면 로그인이 필요합니다.

자유게시판

+
제목 글쓴이 날짜 조회
16년 전 조회 1,409
16년 전 조회 1,234
16년 전 조회 1,239
16년 전 조회 1,226
16년 전 조회 1,249
16년 전 조회 2,323
16년 전 조회 1,232
16년 전 조회 1,842
16년 전 조회 1,475
16년 전 조회 1,683
16년 전 조회 1,352
16년 전 조회 1,202
16년 전 조회 2,470
16년 전 조회 1,408
16년 전 조회 1,420
16년 전 조회 1,172
16년 전 조회 1,624
16년 전 조회 1,448
16년 전 조회 1,204
16년 전 조회 1,266
16년 전 조회 1,260
16년 전 조회 1,239
16년 전 조회 1,332
16년 전 조회 1,511
16년 전 조회 2,097
16년 전 조회 1,826
16년 전 조회 1,140
16년 전 조회 1,215
16년 전 조회 1,155
16년 전 조회 1,303