javascript 에서 position 값 을 변경 하여 메뉴 를 맨 위로 스크롤 한 후 고정 합 니 다.

2725 단어
현재 많은 사이트 들 이 이러한 효 과 를 가지 고 있 습 니 다. 페이지 가 일정한 높이 로 굴 러 갈 때 메뉴 표시 줄 은 페이지 상단 에 고정 되 어 있 습 니 다.사실은 position 의 값 을 바 꾸 는 것 입 니 다.
html 코드:
 
  




<br/><link rel="stylesheet" type="text/css" href="css/base.css" media="all"/> <br/><style type="text/css"> <br>.wrapper{width:1000px;height:2000px;margin-left:auto;margin-right:auto;} <br>.header{height:150px;} <br>#nav{padding:10px;position:relative;top:0;background:black;width:1000px;} <br>a{display:inline-block;margin:0 10px;*display:inline;zoom:1;color:white;} <br></style> <br/> <br/> <br/><div class="wrapper"> <br/><div class="header"/> <br/><div id="nav"> <br/><a href="#">11111</a> <br/><a href="#">22222</a> <br/><a href="#">33333</a> <br/><a href="#">44444</a> <br/><a href="#">55555</a> <br/></div> <br/></div> <br/> <br/> <br/><script type="text/javascript" src="menuFixed.js"/> <br/><script type="text/javascript"> <br>window.onload = function(){ <br>menuFixed('nav'); <br>} <br></script> <br/> </code></pre> <br/> <strong>menuFixed.js </strong>: <br/> <pre><code> <br/>function menuFixed(id){ <br/>var obj = document.getElementById(id); <br/>var _getHeight = obj.offsetTop; <br/>window.onscroll = function(){ <br/>changePos(id,_getHeight); <br/>} <br/>} <br/>function changePos(id,height){ <br/>var obj = document.getElementById(id); <br/>var scrollTop = document.documentElement.scrollTop || document.body.scrollTop; <br/>if(scrollTop < height){ <br/>obj.style.position = 'relative'; <br/>}else{ <br/>obj.style.position = 'fixed'; <br/>} <br/>} <br/> </code></pre> <br/> , ie6 , ie6 position:fixed; <br/>PS: , javascript , 。 <div class="clearfix"> <span id="art_bot" class="jbTestPos"/> </div> </div> </div> </div>

좋은 웹페이지 즐겨찾기