2021.12.15|CMS技術
マウスオーバーでプルダウンメニューを実装するレスポンシブグローバルナビゲーション jQuery「doubletaptogo」の設定方法
マウスオーバーでプルダウンメニューを実装するグローバルナビゲーションは、jQueryライブラリを使うことによって設定できます。
レスポンシブ・デザイン対応のWebサイトが増えてきてグローバルナビゲーションの表現方法も沢山増えてきました。
マウスオーバーでプルダウンメニューを実装するグローバルナビゲーションjQueryプラグイン「doubletaptogo Plugin」の設定方法を解説します。
本記事の内容
マウスオーバーでプルダウンメニューを実装するレスポンシブグローバルナビゲーションの設定方法
1.jQueryライブラリをダウンロード
下記からJavaScriptライブラリのダウンロードを行ってください。
jqueryライブラリダウンロード
doubletaptogo.jsダウンロード
2.html、cssファイルを作成
html、cssファイルを作成します。
htmlファイルに記述
<div id="nav_inner">
<nav id="nav" role="navigation">
<a href="#nav" title="Show navigation">Show navigation</a>
<a href="#" title="Hide navigation">Hide navigation</a>
<ul class="clearfix">
<li><a href="/" aria-haspopup="true">お知らせ</a></li>
<li>
<a href="/" aria-haspopup="true"><span>事業内容</span></a>
<ul>
<li><a href="/">事業内容01</a></li>
<li><a href="/">事業内容02</a></li>
<li><a href="/">事業内容03</a></li>
<li><a href="/">事業内容04</a></li>
</ul>
</li>
<li><a href="/" aria-haspopup="true">制作実績</a></li>
<li><a href="/" aria-haspopup="true">ブログ</a></li>
<li><a href="/" aria-haspopup="true"><span>会社案内</span></a>
<ul>
<li><a href="/">経営理念</a></li>
<li><a href="/">代表挨拶</a></li>
<li><a href="/">沿革</a></li>
<li><a href="/">アクセス</a></li>
</ul>
</li>
<li><a href="/" aria-haspopup="true">お問い合わせ</a></li>
</ul>
</nav>
</div>
cssファイルに記述
#nav_inner{
float: left;
width:100%;
margin:10px 0 0 0;
background-color:#5cb181;
}
#nav{
width:1020px;
margin:auto;
}
#nav > a{
display: none;
}
#nav li{
position: relative;
z-index:3;
}
#nav li a{
color:#fff;
display: block;
text-decoration:none;
}
#nav li a:active{
background-color: #e6e6e6 !important;
}
#nav span:after{
width: 0;
height: 0;
border: 0.313em solid transparent; /* 5 */
border-bottom: none;
border-top-color: #d1d1d1;
content: '';
vertical-align: middle;
display: inline-block;
position: relative;
right: -0.313em; /* 5 */
}
/* first level */
#nav > ul{
height: 3;
background-color: #5cb181;
}
#nav > ul > li{
width: 16.66%;
height: 100%;
float: left;
}
#nav > ul > li > a{
height: 100%;
font-size:110%;
color:#FFFFFF;
line-height:3.5;
text-align: center;
margin:4px 0 0 0;
border-bottom:4px solid #5cb181;
}
#nav > ul > li > a.active{
border-bottom:4px solid #063;
}
#nav ul li:first-child{
border-left: 1px dotted #9accb0;}
#nav > ul > li > a{
border-right: 1px dotted #9accb0;}
#nav > ul > li:hover > a,
#nav > ul:not( :hover ) > li.active > a{
color:#fff;
background-color: #5cb181;
}
/* second level */
#nav li ul{
background-color: #5cb181;
display: none;
position: absolute;
top: 100%;
}
#nav li:hover ul{
display: block;
left: 0;
right: 0;
}
#nav li:not( :first-child ):hover ul{
left: -1px;
}
#nav li ul a{
font-size:100%;
color:#fff;
border-top: 1px solid #7ac39a;
padding: 0.75em; /* 15 (20) */
}
#nav li ul li a:hover,
#nav li ul:not( :hover ) li.active a{
background-color: #4ba271;
}
@media only screen and ( max-width: 62.5em ) /* 1000 */{
#nav
{
width: 100%;
position: static;
margin: 0;
}
}
@media only screen and ( max-width: 40em ) /* 640 */{
html{
font-size: 75%; /* 12 */
}
#nav{
position: relative;
top: auto;
left: auto;
}
#nav > a{
width: 3.125em; /* 50 */
height: 3.125em; /* 50 */
text-align: left;
text-indent: -9999px;
background-color: #369660;
position: relative;
}
#nav > a:before,
#nav > a:after{
position: absolute;
border: 2px solid #fff;
top: 35%;
left: 25%;
right: 25%;
content: '';
}
#nav > a:after{
top: 60%;
}
#nav:not( :target ) > a:first-of-type,
#nav:target > a:last-of-type{
display: block;
}
/* first level */
#nav > ul{
height: auto;
display: none;
position: absolute;
left: 0;
right: 0;
}
#nav:target > ul{
display: block;
}
#nav > ul > li{
width: 100%;
float: none;
}
#nav > ul > li > a{
height: auto;
color:#fff;
text-align: left;
padding: 0 0.833em; /* 20 (24) */
}
#nav > ul > li:not( :last-child ) > a{
border-right: none;
border-bottom: 1px solid #d3d3d3;
}
/* second level */
#nav li ul{
position: static;
padding: 1.25em; /* 20 */
padding-top: 0;
}
}
3.htmlファイル内に記述
「JavaScript」ファイルへのディレクトリをメタタグに記述します。
htmlファイルにJavaScriptの記述
<meta charset="UTF-8">
<title>マウスオーバーで吹き出しが出るレスポンシブグローバルナビゲーション jQuery「animenu.js」の設定方法|Webデザイナーブログ</title>
<meta name="description" content="ドロップダウンでメニューを表示するレスポンシブグローバルメニュー jQuery「doubletaptogo.js」のご紹介を致します。">
<meta name="keywords" content="doubletaptogo,ドロップダウン,グローバルメニュー,レスポンシブ">
<meta name="robots" content="all">
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" type="text/css" href="/sample/016/base.css" media="all" />
<!--グローバルナビ-->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script type="text/javascript" src="/sample/016/doubletaptogo.js"></script>
<script>
$( function()
{
$( '#nav li:has(ul)' ).doubleTapToGo();
});
</script>
<script type="text/javascript">
$(function(){
$('#nav li a').each(function(){
var $href = $(this).attr('href');
if(location.href.match($href)) {
$(this).addClass('active');
} else {
$(this).removeClass('active');
}
});
});
</script><
実装サンプル
実装サンプルを作りましたのでこちらでも確認してみてください。
jQuery inview Plugin デモ
まとめ
以上で設定完了となりますが、簡単に設定ができますね。
グローバルナビゲーションの表現方法が沢山あるますが、一番シンプルなナビゲーションになります。
マウスオーバーアクションとしては基本となるグローバルナビゲーションなので覚えておくと良いでしょう。