간단한 서브메뉴 onmouseover 이벤트 팁
- 서론 : 자유게시판의 요엘아빠님의 글에서 소스와 예제를 원하시는 분이 계셔서 이렇게 여기에 올립니다
:: 간단한 소개 ::
저는 요번 메뉴를 웹표준에 맞게 제작하여서 실제론 <div>, <ul>, <li> 소스만 사용하였
습니다. 또한 이에 맞게 CSS 스타일도 입혀주었습니다. 아래 예제들은 제일 간단하게 제작되었습니다.
저는 요번 메뉴를 웹표준에 맞게 제작하여서 실제론 <div>, <ul>, <li> 소스만 사용하였
습니다. 또한 이에 맞게 CSS 스타일도 입혀주었습니다. 아래 예제들은 제일 간단하게 제작되었습니다.
>> 이미지 활용
:: CSS (스타일시트) ::
설명 : 서브메뉴는 기본적으로 display 속성을 none 으로 맞춰줍니다. 그리고 이미지에는 <a> 태그를 사용하지 않을 경우로 포인터 속성을 입혀주었습니다.
#submenu_1 { display:none }
#submenu_2 { display:none }
#mainmenu_img { cursor:pointer; border:0; }
설명 : 서브메뉴는 기본적으로 display 속성을 none 으로 맞춰줍니다. 그리고 이미지에는 <a> 태그를 사용하지 않을 경우로 포인터 속성을 입혀주었습니다.
#submenu_1 { display:none }
#submenu_2 { display:none }
#mainmenu_img { cursor:pointer; border:0; }
:: 자바스크립트 ::
var save_layer = null;
function submenu_viewer(menu_id, opt)
{
if (save_layer != null)
save_layer.style.display = "none";
if (opt == 'hide')
{
if (save_layer != null)
save_layer.style.display = "none";
} else {
var menu = document.getElementById(menu_id);
menu.style.display = 'block';
}
save_layer = menu;
}
var save_layer = null;
function submenu_viewer(menu_id, opt)
{
if (save_layer != null)
save_layer.style.display = "none";
if (opt == 'hide')
{
if (save_layer != null)
save_layer.style.display = "none";
} else {
var menu = document.getElementById(menu_id);
menu.style.display = 'block';
}
save_layer = menu;
}
:: HTML 소스 ::
설명 : 이미지 사용시 <a>를 사용하지 않는 가정하에 포인터라는 속성을 입혀주며, 링크를 입혀줘도 상관없도록 하게 만들었습니다. 또한 onmouseover 안에 보시면 submenu_viewer의 첫번째 값은 서브메뉴의 아이디값을 넣어주시면 됩니다. 특히 첫 소스에서 'null' 을 뜻하는건 조건을 넘기지 않는 것이며, 두번째 값은 'hide'와 'view'가 있는데, 만일 서브메뉴를 보고싶을시에는 view를 넣어주시면 되시고, 만일 보여진 서브메뉴를 없앨려면 'hide'를 쓰시면 됩니다.
1. 이미지 사용시
<div name="mainmenu">
<img src="소스" id="mainmenu_img" onmouseover="submenu_viewer('null', 'hide');">
<img src="메인메뉴1" id="mainmenu_img" onmouseover="submenu_viewer('submenu_1', 'view');">
<img src="메인메뉴2" id="mainmenu_img" onmouseover="submenu_viewer('submenu_2', 'view');">
</div>
2. 텍스트 사용시
<div name="mainmenu">
<a href="링크" onmouseover="submenu_viewer('null', 'hide');">인덱스</a>
<a href="메인메뉴1" onmouseover="submenu_viewer('submenu_1', 'view');">메인메뉴1</a>
<a href="메인메뉴2" onmouseover="submenu_viewer('submenu_2', 'view');">메인메뉴2</a>
3. 서브메뉴 소스
<div id="submenu_1">어쩌구저쩌구</div>
<div id="submenu_2">어쩌구 저쩌구</div>
설명 : 이미지 사용시 <a>를 사용하지 않는 가정하에 포인터라는 속성을 입혀주며, 링크를 입혀줘도 상관없도록 하게 만들었습니다. 또한 onmouseover 안에 보시면 submenu_viewer의 첫번째 값은 서브메뉴의 아이디값을 넣어주시면 됩니다. 특히 첫 소스에서 'null' 을 뜻하는건 조건을 넘기지 않는 것이며, 두번째 값은 'hide'와 'view'가 있는데, 만일 서브메뉴를 보고싶을시에는 view를 넣어주시면 되시고, 만일 보여진 서브메뉴를 없앨려면 'hide'를 쓰시면 됩니다.
1. 이미지 사용시
<div name="mainmenu">
<img src="소스" id="mainmenu_img" onmouseover="submenu_viewer('null', 'hide');">
<img src="메인메뉴1" id="mainmenu_img" onmouseover="submenu_viewer('submenu_1', 'view');">
<img src="메인메뉴2" id="mainmenu_img" onmouseover="submenu_viewer('submenu_2', 'view');">
</div>
2. 텍스트 사용시
<div name="mainmenu">
<a href="링크" onmouseover="submenu_viewer('null', 'hide');">인덱스</a>
<a href="메인메뉴1" onmouseover="submenu_viewer('submenu_1', 'view');">메인메뉴1</a>
<a href="메인메뉴2" onmouseover="submenu_viewer('submenu_2', 'view');">메인메뉴2</a>
3. 서브메뉴 소스
<div id="submenu_1">어쩌구저쩌구</div>
<div id="submenu_2">어쩌구 저쩌구</div>
갑자기 요청하셔가지고 설명이 좀 복잡한데요...
더 물어보실게 있다면 쪽지를 이용해주시면 감사하겠습니다 ^^
[이 게시물은 관리자님에 의해 2011-10-31 17:16:08 PHP & HTML에서 이동 됨]
댓글 7개
terrorboys
16년 전
감사드립니다.^^
16년 전
좋은 소스입니다~ 감사합니다~~
16년 전
감사합니다..
그런데 혹시 쿠키를 기억할 수 있도록 할 수 있는 방법은 없을까요??
특정 메뉴에 가면 그 메뉴들이 활성화가 되게 하고 싶어서요..ㅠㅠ
그런데 혹시 쿠키를 기억할 수 있도록 할 수 있는 방법은 없을까요??
특정 메뉴에 가면 그 메뉴들이 활성화가 되게 하고 싶어서요..ㅠㅠ
16년 전
근데 마우스 올라 갈시에는 그밑으로 서부메뉴가 나오게 하자면 어덯게 하죠?
16년 전
메뉴
나와같다면
16년 전
onmouseout 이 없는데...
넣을수 없을까요???
넣을수 없을까요???
15년 전
메뉴
게시글 목록
| 번호 | 제목 |
|---|---|
| 11913 | |
| 20339 | |
| 11912 | |
| 11909 |
JavaScript
Ajax 로 받은 Json 값을 View 형식에 맞춰 표현
2
|
| 11908 | |
| 11890 | |
| 11887 | |
| 11886 | |
| 17743 | |
| 11885 |
MySQL
MYSQL 쿼리순서, 부하여부 질문드려요
|
| 17742 | |
| 11884 | |
| 11883 | |
| 20338 | |
| 11880 |
node.js
mysql 연결 방법 2가지
2
|
| 11876 |
JavaScript
한글로 된 숫자를 아라비아 숫자로 변환
3
|
| 11874 | |
| 11873 | |
| 20334 | |
| 11872 |
jQuery
제이쿼리로 이미지 회전 시키기
|
| 11869 |
jQuery
구형 익스에서 HTML5 적용시키기
2
|
| 11867 |
jQuery
특정 레이어 높이 100% 잡는 법
1
|
| 20333 | |
| 11865 |
jQuery
모바일 해상도에 맞게 이미지 출력
1
|
| 11864 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기