자바스크립트에 관한 궁금증... 정보
자바스크립트에 관한 궁금증...
본문
- function name(id) {
- var Display = document.getElementById(id).style.display;
- if(Display == "none") {
- Display = "block";
- }
- else {
- Display = "none";
- }
- }
위와 같이 되어있을 때,
Display 변수가 if 까지(셋째 줄)는 잘 되지만, if 안에서는 적용이 되지 않는 이유가 뭘까요?
아 물런 적용이 안되서 그냥
document.getElementById(id).style.display = "block"; 로 쓰고있긴 합니다.
추천
0
0
댓글 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는 엘리먼트를 가르키고.. 그 엘리먼트에 값을 집어 넣으면 적용 됩니다.
이건 Display 란 변수에 스타일 값을 불러 들이는 것으로..
결국 Display 가 가지는 값은 단순 문자열 밖에 없습니다.
그래서
Display = "block";
해봐야 바뀌는건 없습니다.
Display 란 문자열 변수의 문자열 값만 바뀌는거죠..
var obj = document.getElementById(id);
# if(obj.style.display == "none") {
# obj.style.display = "block";
# }
위와 같이 해야겠죠..
위에서 obj는 엘리먼트를 가르키고.. 그 엘리먼트에 값을 집어 넣으면 적용 됩니다.

답변 감사합니다^^