jQueryでメニューを固定位置に追随させる:Live floating menu

いろいろなサイトでメニューを固定&追随させています。
今回はJavaScriptでこれを実現させてみます。
via:Live floating menu

sponsors

使用方法

jQueryからjquery.jsとjquery.dimensions.jsをダウンロードします。

<script type="text/javascript" src="jquery-1.3.2.js"></script>
<script type="text/javascript" src="jquery.dimensions.js"></script>
<script type="text/javascript">
var name = "#id名";
var menuYloc = null;
$(document).ready(function(){
	menuYloc = parseInt($(name).css("top").substring(0,$(name).css("top").indexOf("px")))
	$(window).scroll(function () { 
		offset = menuYloc+$(document).scrollTop()+"px";
		$(name).animate({top:offset},{duration:500,queue:false});
	});
}); 
</script>
上記で記述したらid名をメニュー要素に付与すれば完成です。

<div id="floatMenu"> 
  <ul> 
    <li><a href="#" onclick="return false;">メニュー1</a></li>
    <li><a href="#" onclick="return false;">メニュー2</a></li>
  </ul> 
</div> 
なお、表示位置はcssで指定します。
<style>#floatMenu {position:absolute;top:150px;right:50px;}</style>

サンプル

Javascriptサンプルページ一覧
skuare.net

sponsors