[JS]縦長ページに実用性とデザイン性を兼ね備えたスクロールメニューを設置するスクリプト -ScrollMenu
Post on:2015年5月29日
sponsorsr
縦長ページにナビゲーション機能とスクロール機能を融合させた、実用性とデザイン性を兼ね備えたスクロールメニューを実装できるjQueryのプラグインを紹介します。
細かいとこまで配慮が行き届いた設計に、よく考えられてる!と思いました。
「ScrollMenu」は、スクロールバーの「バー」が「メニュー」として機能する感じです。

ScrollMenuのデモ
デモでは縦長ページで、そのページがどのくらいの長さなのか、セクションがいくつあるのか、今どこにいるのか、といった実用的な機能だけでなく、メニューのデザインやインタラクションを楽しむことができます。

ページ左に配置されたスクロールメニューは、ページ内のセクションに応じてナビゲーションとして機能します。このメニュー自体をスクロールすることも可能で、もちろん通常のスクロール操作、ブラウザデフォルトのスクロールバーを表示させることも可能です。

各メニューは、カスタマイズも可能
垂直のほかに、水平のメニュー、ヘッダ兼メニューなど、さまざまなタイプが簡単に実装できます。

各アイテムをホバーすると、垂直方向に広がります。


各アイテムにさまざまなエフェクトが仕込まれています。


ブラウザのデフォルトのスクロールバーを併用することも可能です。
ScrollMenuの使い方
Step 1: 外部ファイル
当スタイルシート・スクリプト、jquery.jsを外部ファイルとして記述します。
<head>
...
<link rel="stylesheet" type="text/css" href="scrollmenu.css">
</head>
<body>
...
コンテンツ
...
<script src="jquery.js"></script>
<script src="scrollmenu.js"></script>
</body>
Step 2: HTML
各コンテンツは、section要素で実装します。
<section class="section" id="section1"> <div class="content">Section 1</div> </section> <section class="section" id="section2"> <div class="content">Section 2</div> </section> <section class="section" id="section3"> <div class="content">Section 3</div> </section>
Step 3: JavaScript
メニューのHTMLと各メニューの背景やラベルを指定し、スクリプトを実行します。
<script>
//base setup
var setupOption = {
template: '<div class="menu-wrap"><div class="menu"><%= label %></div></div>',
anchorSetup: [
{
backgroundColor: "#dc767d",
label: "Section 1"
},
{
backgroundColor: "#36d278",
label: "Section 2"
},
{
backgroundColor: "#22cfc6",
label: "Section 3"
}]
};
var scrollMenu = ScrollMenu(setupOption);
</script>
オプションでは、ブラウザのスクロールバーを表示、スペースなどを設定できます。
scrollbarVisible : true, scrollAnchorSpacing : 0,
sponsors











