웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
자동 스크롤 메뉴 (끄기 기능, 무한 스크롤 X)
2004.05.02 14:00
태그 연습장 : http://hex254.zerois.net/html/tag.htm
연습해보세요.
<script language="javascript">
<!--
var stmnLEFT = 10; // 스크롤메뉴의 좌측 위치
var stmnGAP1 = 10; // 페이지 헤더부분의 여백
var stmnGAP2 = 200; // 스크롤시 브라우저 상단과 약간 띄움. 필요없으면 0으로 세팅
var stmnBASE = 100; // 스크롤메뉴 초기 시작위치 (아무렇게나 해도 상관은 없지만 stmnGAP1과 약간 차이를 주는게 보기 좋음)
var stmnActivateSpeed = 0; // 움직임을 감지하는 속도 (숫자가 클수록 늦게 알아차림)
var stmnScrollSpeed = 0; // 스크롤되는 속도 (클수록 늦게 움직임)
var stmnTimer;
function ReadCookie(name) {
var label = name + "=";
var labelLen = label.length;
var cLen = document.cookie.length;
var i = 0;
while (i < cLen) {
var j = i + labelLen;
if (document.cookie.substring(i, j) == label) {
var cEnd = document.cookie.indexOf(";", j);
if (cEnd == -1) cEnd = document.cookie.length;
return unescape(document.cookie.substring(j, cEnd));
}
i++;
}
return "";
}
function SaveCookie(name, value, expire) {
var eDate = new Date();
eDate.setDate(eDate.getDate() + expire);
document.cookie = name + "=" + value + "; expires=" + eDate.toGMTString()+ "; path=/";
}
function RefreshStaticMenu()
{
var stmnStartPoint, stmnEndPoint, stmnRefreshTimer;
stmnStartPoint = parseInt(STATICMENU.style.top, 10);
stmnEndPoint = document.body.scrollTop + stmnGAP2;
stmnLimit = parseInt(window.document.body.scrollHeight) - parseInt(STATICMENU.offsetHeight);
if (stmnEndPoint > stmnLimit) stmnEndPoint = stmnLimit;
if (stmnEndPoint < stmnGAP1) stmnEndPoint = stmnGAP1;
stmnRefreshTimer = stmnActivateSpeed;
if ( stmnStartPoint != stmnEndPoint ) {
stmnScrollAmount = Math.ceil( Math.abs( stmnEndPoint - stmnStartPoint ) / 15 );
STATICMENU.style.top = parseInt(STATICMENU.style.top, 10) + ( ( stmnEndPoint<stmnStartPoint ) ? -stmnScrollAmount : stmnScrollAmount );
stmnRefreshTimer = stmnScrollSpeed;
}
stmnTimer = setTimeout ("RefreshStaticMenu();", stmnRefreshTimer);
}
function ToggleAnimate() {
if (!ANIMATE.checked) {
RefreshStaticMenu();
SaveCookie("ANIMATE", "true", 300);
} else {
clearTimeout(stmnTimer);
STATICMENU.style.top = stmnGAP1;
SaveCookie("ANIMATE", "false", 300);
}
}
function InitializeStaticMenu() {
STATICMENU.style.left = stmnLEFT;
if (ReadCookie("ANIMATE") == "false") {
ANIMATE.checked = true;
STATICMENU.style.top = document.body.scrollTop + stmnGAP1;
} else {
ANIMATE.checked = false;
STATICMENU.style.top = document.body.scrollTop + stmnBASE;
RefreshStaticMenu();
}
}
//-->
</script>
<div id="STATICMENU" style="position:absolute;width:150px;height:120px;">
<table border="0" cellspacing="0" cellpadding="0" width="100%" height="100%" style="border:1 solid #999999;">
<tr>
<td align="center" height="100">
이곳에 메뉴를 넣어주세요.
</td>
</tr>
<tr>
<td align="left" height="20"> <input id="ANIMATE" type="checkbox" onclick="ToggleAnimate();"> 따라다님 끄기</td>
</tr>
</table>
</div>
<script language="javascript">
<!--
InitializeStaticMenu(); // 스크롤메뉴를 가동하는 자바스크립트
//-->
</script>
<br> <!--연습장용 -_-; (스크롤바를 생기게 하려면..)--!>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
ㅡㅡ;
연습해보세요.
<script language="javascript">
<!--
var stmnLEFT = 10; // 스크롤메뉴의 좌측 위치
var stmnGAP1 = 10; // 페이지 헤더부분의 여백
var stmnGAP2 = 200; // 스크롤시 브라우저 상단과 약간 띄움. 필요없으면 0으로 세팅
var stmnBASE = 100; // 스크롤메뉴 초기 시작위치 (아무렇게나 해도 상관은 없지만 stmnGAP1과 약간 차이를 주는게 보기 좋음)
var stmnActivateSpeed = 0; // 움직임을 감지하는 속도 (숫자가 클수록 늦게 알아차림)
var stmnScrollSpeed = 0; // 스크롤되는 속도 (클수록 늦게 움직임)
var stmnTimer;
function ReadCookie(name) {
var label = name + "=";
var labelLen = label.length;
var cLen = document.cookie.length;
var i = 0;
while (i < cLen) {
var j = i + labelLen;
if (document.cookie.substring(i, j) == label) {
var cEnd = document.cookie.indexOf(";", j);
if (cEnd == -1) cEnd = document.cookie.length;
return unescape(document.cookie.substring(j, cEnd));
}
i++;
}
return "";
}
function SaveCookie(name, value, expire) {
var eDate = new Date();
eDate.setDate(eDate.getDate() + expire);
document.cookie = name + "=" + value + "; expires=" + eDate.toGMTString()+ "; path=/";
}
function RefreshStaticMenu()
{
var stmnStartPoint, stmnEndPoint, stmnRefreshTimer;
stmnStartPoint = parseInt(STATICMENU.style.top, 10);
stmnEndPoint = document.body.scrollTop + stmnGAP2;
stmnLimit = parseInt(window.document.body.scrollHeight) - parseInt(STATICMENU.offsetHeight);
if (stmnEndPoint > stmnLimit) stmnEndPoint = stmnLimit;
if (stmnEndPoint < stmnGAP1) stmnEndPoint = stmnGAP1;
stmnRefreshTimer = stmnActivateSpeed;
if ( stmnStartPoint != stmnEndPoint ) {
stmnScrollAmount = Math.ceil( Math.abs( stmnEndPoint - stmnStartPoint ) / 15 );
STATICMENU.style.top = parseInt(STATICMENU.style.top, 10) + ( ( stmnEndPoint<stmnStartPoint ) ? -stmnScrollAmount : stmnScrollAmount );
stmnRefreshTimer = stmnScrollSpeed;
}
stmnTimer = setTimeout ("RefreshStaticMenu();", stmnRefreshTimer);
}
function ToggleAnimate() {
if (!ANIMATE.checked) {
RefreshStaticMenu();
SaveCookie("ANIMATE", "true", 300);
} else {
clearTimeout(stmnTimer);
STATICMENU.style.top = stmnGAP1;
SaveCookie("ANIMATE", "false", 300);
}
}
function InitializeStaticMenu() {
STATICMENU.style.left = stmnLEFT;
if (ReadCookie("ANIMATE") == "false") {
ANIMATE.checked = true;
STATICMENU.style.top = document.body.scrollTop + stmnGAP1;
} else {
ANIMATE.checked = false;
STATICMENU.style.top = document.body.scrollTop + stmnBASE;
RefreshStaticMenu();
}
}
//-->
</script>
<div id="STATICMENU" style="position:absolute;width:150px;height:120px;">
<table border="0" cellspacing="0" cellpadding="0" width="100%" height="100%" style="border:1 solid #999999;">
<tr>
<td align="center" height="100">
이곳에 메뉴를 넣어주세요.
</td>
</tr>
<tr>
<td align="left" height="20"> <input id="ANIMATE" type="checkbox" onclick="ToggleAnimate();"> 따라다님 끄기</td>
</tr>
</table>
</div>
<script language="javascript">
<!--
InitializeStaticMenu(); // 스크롤메뉴를 가동하는 자바스크립트
//-->
</script>
<br> <!--연습장용 -_-; (스크롤바를 생기게 하려면..)--!>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
ㅡㅡ;
댓글 6
-
킬러
2004.05.02 15:58
ㅡㅡ; -
[수아]작은아씨
2004.05.02 17:24
다시 열기기능은...;; -
☺심심
2004.05.02 23:02
수아// 체크 해제하면 되는데요? -
[수아]작은아씨
2004.05.09 16:14
아;; 아예 창에서 숨김으로 넘겨지는줄 알았습니다(죄송) -
한군닷컴
2008.02.19 16:55
멋진소스!! 잘쓰겠습니다!!
-
발자
2009.05.25 22:36
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">상단에 위 문구가 들어가면 안되네요..ㅠㅠ
제목 | 글쓴이 | 날짜 |
---|---|---|
공지사항|일기장 4강 - notice.php 간단한 글보이기 | 시루바 | 2003.10.16 |
회원 포인트 랭킹(중복 -_-a)
[4]
![]() | weky | 2003.11.15 |
제로보드회원의 포인트 랭킹 체크하기 sql 정리 [4] | 한꼬마 | 2003.11.26 |
DB에서 받은 데이터 배열로 하나씩 뿌리기 | LetMeLove | 2003.12.09 |
한꼬마의 제로보드 활용법 (게시물 추출하기) [4] | 한꼬마 | 2004.02.17 |
여러 DB에서 최근 게시물 추출하기 위한 소스 입니다. [6] | NS | 2004.02.21 |
나만의 미니홈 만들기 ㅡ list.php , 디비 테이블 생성
[6]
![]() | 예뜨락 | 2004.11.26 |
나만의 미니홈 만들기 ㅡ view.php 파일과 제목링크
[9]
![]() | 예뜨락 | 2004.11.27 |
나만의 미니홈 만들기 ㅡ메뉴에 게시판 연결
[5]
![]() | 예뜨락 | 2004.12.17 |
나만의 미니홈 만들기 ㅡ 간단한 최근글 불러오기 [6] | 예뜨락 | 2005.05.09 |
나만의 미니홈 만들기 ㅡ 메모장 소스 | 예뜨락 | 2005.06.09 |
[PHP 동영상강의] 32. 자료의 정렬순서를 바꿔보자. [8] | 서기 | 2006.01.11 |
다운로드 이어 받기 및 전송속도 제한 구현 [1] | 박원형 | 2006.12.11 |
[알아서 나쁠것없는 10원짜리 팁!] 수십 수백명사용자의 일괄생성 방법! [6] | 임현 | 2002.05.09 |
제로보드 data 폴더 일괄적으로 소유권 변경 스크립트 [2] | 라지엘 | 2002.07.01 |
[FreeBSD] qmail+mysql+vpopmail+qmailadmin 설치 [1] | DeX™ | 2002.11.26 |
초보자도 쉽게 이해할수있도록 주석을 자세히 달아놓은 APM 메뉴얼 (2 of 4) [4] | Dopesoul | 2002.12.18 |
무료 호스팅 서버 만들기 -4부 [18] | 장동민 | 2003.01.04 |
htaccess를 활용하자 3탄! 사용자인증 [4] | [쿨럭]블루엔젤 | 2003.01.23 |
phpMyAdmin 보안설정하기 [5] | 겨울늑대 | 2003.02.27 |