첨부파일 https://imweb.eond.com/coding/20491
  div나 span 등의 태그에 고유ID를 준 후에, 내용을 적당히 묶고 링크에서 아래와 같이 호출합니다.

"내용 1" 부분에는 어떠한 태그라도 사용가능합니다.
또한 div나 span 등으로 묶지 않고 곧바로 table이나 iframe 태그에다가 id를 넣어주셔도 됩니다. ^_^

<a style='cursor:hand' onclick="MyMenu.style.display=''">보이기 1</a>
<div id=MyMenu style='display:none'>내용 1</div>

"내용 1" 부분의 style을 보시면 display:none으로 화면에 안보이게 설정된게 보이시죠?

여기서 "보이기 1" onclick에 이 display값을 공백으로 바꾸게 했으므로
"보이기 1"을 클릭하시면 id가 MyMenu인 부분이 보이게 됩니다. 쉽죠? ^_^

위와 같은 형식이라면 숨겼다가 보여주기는 식은 죽 먹기겠죠.

-----------------

그럼 좀더 어렵게 해보죠. 이번에는 쉽게 말해 toggle입니다.
즉, 보이는 상태에서 클릭하면 안보이게 숨겨버리고, 안보이는 상태에서 클릭하면 보여주는거죠.

Javascript의 if~else 구문을 이용하시면 간단하게 구현 가능합니다.

<a style='cursor:hand' onclick="if(MyMenu2.style.display=='none'){MyMenu2.style.display=''}else{MyMenu2.style.display='none'}">보이기 2</a>
<div id=MyMenu2 style='display:none'>내용 2</div>

onclick을 부분을 보시면 if문을 사용해서 MeMenu2 부분의 display 속성값을 체크해서 none이면 공백으로 none이 아니면 다시 none으로 바꿔버리는게 보이시죠? ^_^

이제 toggle이 가능해졌습니다. (예전에 제쯔에 있던 MyMenu 부분이 저런식이었죠 아마?)

-----------------
마지막으로 onclick 부분이 너무 지저분해졌으니 이부분을 Javascript 함수로 돌려보도록 합시다.

<script>
function toggleD(obj) {
if (obj.style.display == 'none') obj.style.display = ''; else obj.style.display = 'none'; }
</script>

<a style='cursor:hand' onclick=toggleD(MyMenu3);>보이기 3</span> <div id=MyMenu3 style='display:none'>내용 3</div>

두번째 방법에서의 onclick에 있던 if~else가 그대로 함수化 되었으며,
차이점이라면 obj라는 변수를 넘겨야한다는 것입니다.
따라서 onclick=toggleD(MyMenu3) 이렇게 잡아주시면 MyMenu3가 위의 함수의 obj값으로 넘어가게 되어 if~else문으로 MyMenu3의 display의 값을 체크해서 토글시키게 되는거죠.

활용범위가 매우 넓은 것이니 꼭 익혀두도록 합시; 쿨럭;

-----------------
꼬랑지 1. id=MyMenu1 이런 id값은 해당 페이지에 반드시 한개만 존재해야합니다.
해당 id를 가진 태그가 없거나, 같은 id를 가진 태그가 여러개라면 에러가 납니다.

꼬랑지 2. display라는 CSS Attribute를 visibility로 바꾸셔도 마찬가지로 보였다 안보였다하게 할 수 있습니다.
display의 none에 대응하는 visibilty의 값은 hidden입니다. 반대는 visible이구요.

display와 visibility의 차이점이라면, display는 none인 상태에서는 화면을 잡아먹지 않습니다.
visibility는 hidden인 상태에서도 화면을 잡아먹습니다.
즉, visibility를 hidden으로 해놓더라도 화면상에는 안보이는 부분이 차지하는 공백이 그대로 나타난다는거죠 ^_^
그럼 이만=3=3;

좋은 정보 올려주시는 분들께 이 게시물을 빌어; 감사드립니다 ^_^      

코멘트 0
접기/펴기 | 댓글 새로고침
 
 
Total 235 articles in 2 / 12 pages
번호 제목 제목 날짜날짜
공지 코딩 배울 수 있는 사이트 모음(HTML/CSS/JS/IMG/PHP) 2018/01/03
공지 jQuery를 배울수 있는 동네들입니다. 2013/08/09
공지 관련 링크 [1] 2010/05/23
215 [Script] body에 2개 이상의 인자 띄우기 2004/04/27
214 [HTML5] 큰 이미지 업로드 할때 테이블 뚫지 못하게 하기(reedyfox.com) 2004/05/01
213 [PHP] 홈페이지 링크를 변수화 한다는 것은 참 재밌어요. 2004/05/01
212 [PHP] 홈페이지 URL 변수화 작업 두번째 방법(by 호경) 2004/05/01
211 [PHP] www 자동 리다이렉션 시켜주기 2004/05/04
210 [Script] 링크 자동으로 onfocus="blur()" 붙이기 (by 후니) [2] 2004/05/05
209 [Script] 링크 자동으로 onfocus="blur()" 붙이기 (by 라지엘) 2004/05/05
208 [Script] 링크 자동으로 onfocus="blur()" 붙이기 (by 멋진돌) [1] 2004/05/05
207 [Script] 접속 시 자동으로 새창 띄우고, 띄워져 있으면 새로고침해도 안 띄우기 (by Aquatype) 2004/05/06
206 [Script] 새창 띄우고 자동 리사이징 (by Aquatype) 2004/05/06
205 [HTML5] 테이블과 관련된 몇가지 태그(업데이트 날짜: 04/05/20) 2004/05/07
204 [HTML5] html 페이지 나누어 깔끔하게 출력하기 2004/05/07
203 [PHP] 퍼미션 변경 2004/05/08
202 [Script] 부모창 닫고 새창 띄우기 (by zero) 2004/05/13
201 [Form] 입력 시 alt + S 먹히게 하기 2004/05/21
200 [Form] 인풋 폼 이미지로 대체하기 [1] 2004/05/21
199 [Form] 폼 이동 시(탭키 이용) 순서 정하기 (by 술도) 2004/05/21
198 [미분류] 현재 필요한 팁(임시) 2004/05/22
197 [HTML5] HTML 태그 그대로 노출하기 2004/05/22
196 [Form] 새창에서 '확인' 누르면 부모창 리로드 시키기 (by 지진) 2004/05/22

해시태그 디렉터리

지금 이순간

오늘의 핫게시물