웹마스터 팁

<SCRIPT language="JavaScript">

// 브라우저 판별을 위한 두개의 변수 :: 불리언 역할을 함
var bNetscape4plus = (navigator.appName == "Netscape" && navigator.appVersion.substring(0,1) >= "5");
// 브라우저가 넷스케이프며 appVersion이 5(버전 : 5.x~7.x)인 경우 true
var bExplorer4plus = (navigator.appName == "Microsoft Internet Explorer" && navigator.appVersion.substring(0,1) >= "4");
// 브라우저가 넷스케이프며 appVersion이 4(버전 : 4.x~6.x)인 경우 true

function CheckUIElements(){

  var yMenuFrom, yMenuTo, yOffset, timeoutNextCheck;

  if ( bNetscape4plus ) { // 네츠케이프 용 설정
    yMenuFrom = parseInt( window.document.getElementById("divMenu").style.top, 10 );
    // 창의 크기를 줄였을 경우나, 레이어의 높이가 창의 크기보다 큰 경우, 무한스크롤이 되는 경우를 방지하기 위한 조건문
    if ( parseInt( window.innerHeight, 10 ) <= parseInt( window.document.getElementById("divMenu").style.height, 10 ) ) yMenuTo = 7; // 위쪽으로부터의 거리
    else yMenuTo = window.pageYOffset + 7;   // 위쪽에서부터의 거리
  }
  else if( bExplorer4plus ) {  // IE 용 설정
    yMenuFrom = parseInt (window.document.all("divMenu").style.top, 10);
    // 창의 크기를 줄였을 경우나, 레이어의 높이가 창의 크기보다 큰 경우, 무한스크롤이 되는 경우를 방지하기 위한 조건문
    if ( parseInt( window.document.body.clientHeight, 10) <= parseInt( window.document.all("divMenu").style.height, 10) ) yMenuTo = 5; // 위쪽으로부터의 거리
    else yMenuTo = window.document.body.scrollTop + 5; // 위쪽에서부터의 거리
  }

  timeoutNextCheck = 500;

  if ( yMenuFrom != yMenuTo ){
    yOffset = Math.ceil( Math.abs( yMenuTo - yMenuFrom ) / 20 ); //스크롤의 속도증감의 부드러움 조절은 이곳의 수치를 이용한다.
    if ( yMenuTo < yMenuFrom ) yOffset = -yOffset;
    if ( bNetscape4plus ) window.document.getElementById("divMenu").style.top = parseInt ( window.document.getElementById("divMenu").style.top, 10 ) + yOffset;
    else if ( bExplorer4plus ) window.document.all("divMenu").style.top = parseInt (window.document.all("divMenu").style.top, 10) + yOffset;
    timeoutNextCheck = 10;
  }
  setTimeout ("CheckUIElements()", timeoutNextCheck);
}



function OnLoad(){

  if ( bNetscape4plus ){
    window.document.getElementById("divMenu").style.top = window.pageYOffset + 0;  
    // 뒤에 더해준 숫자 : 레이어가 처음 나타나는 위치 (위에서 몇픽셀 떨어진 지점) 뒤에 CheckUIElements()에 의해 정해진 지점으로 스크롤 된다.
    //                    300~400정도의 값을 넣어 테스트해보면, 정확한 기능을 파악할 수 있다.
    window.document.getElementById("divMenu").style.visibility = "visible"; // 레이어의 숨김/보이기 옵션중 보이기 옵션
  }
  else if ( bExplorer4plus ){
    window.document.all("divMenu").style.top = document.body.scrollTop + 0;
    // 뒤에 더해준 숫자 : 바로 위 넷스케이프에서 실행되는 스크립트에서의 기능과 같다.
    window.document.all("divMenu").style.visibility = "visible";
  }

  CheckUIElements();
  return true;
}
OnLoad();
</SCRIPT>

-- 위 구문을 넣어주시면 될꺼예요...
저도 첨에 저것 때문에 무진장 고생했어요..ㅍ.ㅍ
저기 보시면..."divMenu" 이건 슬라이드메뉴나 배너.이름이고..
해보시면..다 아실겁니다...하핫..너무 무책임한 발언인가..
www.moongil.com
제목 글쓴이 날짜
주소고정 안되는분들~! [3] 순뎅 2006.07.04
날씨/운세/뉴스/달력/검색등 메인용 귀연 정보박스[미리보기] [12] 뽀因㉦ㅓо Ø Γ 2006.07.19
list , menu form 문에서 select할때 캘리 2006.08.18
슬라이드 배너및 메뉴가 익스플러 창 조절시 좌표값 변할때 사용 하는 구문!! 천문길 2006.08.21
ip추적&감추기 [2] 인테리어뱅크 2006.09.11
HTML 개념잡기 인테리어뱅크 2006.09.11
HTML 기초강좌 [1] 인테리어뱅크 2006.09.11
별거아니지만... form 태그 공백같이 밀려나는것 막기? [3] ReloadMax 2006.09.16
셀렉트박스 트리메뉴인데 참 이뻐요(링크타켓 - top) [3] 뽀因㉦ㅓо Ø Γ 2006.09.19
셀렉트박스 트리메뉴인데 참 이뻐요(링크타켓 - new/blank) [8] file 뽀因㉦ㅓо Ø Γ 2006.09.19
문법적으로 이상이 없는데 빈틈이 생길 때...해결 방법 [5] file 이명우 2006.12.16
프레임속성을 이용해 여러가지 형태로 테이블만들기. [1] 슬비 2007.01.04
각종 이~~~뿐!!! 메인 컨텐츠 모음 [6] 뽀因㉦ㅓо Ø Γ 2007.01.05
간지님 faq 따라하기.... [1] 이진수 2007.01.11
fieldset태그 [1] Dredroad[炫] 2007.01.24
CSS로 바꾸어 쓰는 HTML태그!.. [XHTML약간^^;] [2] 박종훈 2007.02.10
프레임 홈페이지 만들때 유용한 팁 [2] 지오 2007.03.24
[초간단 팁] 글씨에 음영효과를 주는 태그 [2] file 이유 2007.05.02
html 웹자료제작,교과목제작[사용법 동영상강좌] [3] parkys 2007.05.11
메시지 안뜨는 오른쪽 마우스 금지소스 [14] 푸름[poorum] 2007.06.13