イセンチュートリアルサイト
  • CSS
    • スクロールダウン
    • テキストナビゲーション
    • ボタン
    • メニュー
    • 動画
    • 検索
    • 画像リンクの動き
    • 背景の動き
  • Illustrator
  • JS
    • アコーディオンパネル
    • アニメーション
    • エリアの動き
    • ギャラリー
    • グラフ
    • スライド
    • テキストの動き
    • ニュースティッカー
    • ページトップリンク
    • ページ内リンク
    • メニュー
    • モーダルウィンドウ
    • ローディング
  • Photoshop
  • PHP
  • WordPress
    • プラグイン
    • リンク
  • お客様観覧用
    • WEB制作プラン
    • アニメーション
    • グローバルナビゲーション
    • スライド
  • サーバー
    • CPI
  • 未分類
  • 法律
    • 医療法
    • 柔道整復師法
TOP JS

JS

カテゴリーページ

  • クリックしたらナビ背景コンテンツがぼかされる

    カテゴリー:メニュー


    768px以下で動きを変更しています。PCの場合はこのページで動きをご確認ください
     

    HTMLの書き方

    head終了タグ直前に自作のCSSを読み込みます。

    <link rel="stylesheet" type="text/css" href="css/5-1-25.css">

    body内にボタンとナビゲーションとぼかしを入れたいエリアのHTMLを記載します。

    <div class="openbtn"><span></span><span></span><span></span></div>
    
    <nav id="g-nav">
    	<div id="g-nav-list">
    		<ul>
    			<li><a href="#">Top</a></li> 
    			<li><a href="#">About</a></li> 
    			<li><a href="#">Service</a></li> 
    			<li><a href="#">Contact</a></li> 
    		</ul>
    	</div>
    </nav>
    <div id="container">
    	<p>ぼかしを入れたいエリア</p>
    <!--/container--></div>

    body 終了タグ直前に jQuery、動きを制御する自作のJS の2 つを読み込みます。

    <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
    <!--自作のJS-->
    <script src="js/5-1-25.js"></script>

     

    CSSの書き方

    /*========= ぼかしのためのCSS ===============*/
    
    .mainblur{
    	filter: blur(8px);
    }
    
    
    /*========= ナビゲーションのためのCSS ===============*/
    
    #g-nav{
    	/*position:fixed;にし、z-indexの数値を小さくして最背面へ*/
    	position:fixed;
    	z-index: -1;
    	opacity: 0;/*はじめは透過0*/
    
    	/*ナビの位置と形状*/
    	top:0;
    	width:100%;
    	height: 100vh;/*ナビの高さ*/
    	background:rgba(255,255,255,0.3);/*背景を少し透過させる*/
    
    	/*動き*/
    	transition: all 0.3s;
    }
    
    /*アクティブクラスがついたら透過なしにして最前面へ*/
    #g-nav.panelactive{
    	opacity: 1;
    	z-index:999;
    }
    
    /*ナビゲーションの縦スクロール*/
    #g-nav.panelactive #g-nav-list{
    	/*ナビの数が増えた場合縦スクロール*/
    	position: fixed;
    	z-index: 999; 
    	width: 100%;
    	height: 100vh;/*表示する高さ*/
    	overflow: auto;
    	-webkit-overflow-scrolling: touch;
    }
    
    /*ナビゲーション*/
    #g-nav ul {
    	display: none;/*はじめは非表示*/
    
    	/*ナビゲーション天地中央揃え*/
    	position: absolute;
    	z-index: 999;
    	top:50%;
    	left:50%;
    	transform: translate(-50%,-50%);
    }
    
    #g-nav.panelactive ul {
    	display: block;
    }
    
    /*リストのレイアウト設定*/
    #g-nav li{
    	list-style: none;
    	text-align: center; 
    }
    
    #g-nav li a{
    	color: #333;
    	text-decoration: none;
    	padding:10px;
    	display: block;
    	text-transform: uppercase;
    	letter-spacing: 0.1em;
    	font-weight: bold;
    }
    
    /*========= ボタンのためのCSS ===============*/
    .openbtn{
    	position:fixed;
    	z-index: 9999;/*ボタンを最前面に*/
    	top:10px;
    	right: 10px;
    	cursor: pointer;
    	width: 50px;
    	height:50px;
    }
    	
    /*×に変化*/	
    .openbtn span{
    	display: inline-block;
    	transition: all .4s;
    	position: absolute;
    	left: 14px;
    	height: 3px;
    	border-radius: 2px;
    	background-color: #666;
    	width: 45%;
    }
    
    .openbtn span:nth-of-type(1) {
    	top:15px;	
    }
    
    .openbtn span:nth-of-type(2) {
    	top:23px;
    }
    
    .openbtn span:nth-of-type(3) {
    	top:31px;
    }
    
    .openbtn.active span:nth-of-type(1) {
    	top: 18px;
    	left: 18px;
    	transform: translateY(6px) rotate(-45deg);
    	width: 30%;
    }
    
    .openbtn.active span:nth-of-type(2) {
    	opacity: 0;
    }
    
    .openbtn.active span:nth-of-type(3){
    	top: 30px;
    	left: 18px;
    	transform: translateY(-6px) rotate(45deg);
    	width: 30%;
    }
    

     

    JSの書き方

    $(".openbtn").click(function () {//ボタンがクリックされたら
    	$(this).toggleClass('active');//ボタン自身に activeクラスを付与し
    	$("#g-nav").toggleClass('panelactive');//ナビゲーションにpanelactiveクラスを付与
    	$("#container").toggleClass('mainblur');//ぼかしたいエリアにmainblurクラスを付与
    });
    
    $("#g-nav a").click(function () {//ナビゲーションのリンクがクリックされたら
    	$(".openbtn").removeClass('active');//ボタンの activeクラスを除去し
    	$("#g-nav").removeClass('panelactive');//ナビゲーションのpanelactiveクラスを除去し
    	$("#container").removeClass('mainblur');//ぼかしているエリアのmainblurクラスを除去
    });
    投稿日:2022年07月15日
  • クリックしたら円形背景が拡大(中央から)

    カテゴリー:メニュー


    768px以下で動きを変更しています。PCの場合はこのページで動きをご確認ください
     

    HTMLの書き方

    head終了タグ直前に自作のCSSを読み込みます。

    <link rel="stylesheet" type="text/css" href="css/5-1-24.css">

    body内にボタンとナビゲーションのHTMLを記載します。

    <div class="openbtn"><span></span><span></span><span></span></div>
    
    <nav id="g-nav">
    	<div id="g-nav-list"><!--ナビの数が増えた場合縦スクロールするためのdiv※不要なら削除-->
    		<ul>
    			<li><a href="#">Top</a></li> 
    			<li><a href="#">About</a></li> 
    			<li><a href="#">Service</a></li> 
    			<li><a href="#">Contact</a></li> 
    		</ul>
    	</div>
    </nav>
    <div class="circle-bg"></div>

    body 終了タグ直前に jQuery、動きを制御する自作のJS の2 つを読み込みます。

    <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
    <!--自作のJS-->
    <script src="js/5-1-24.js"></script>

     

    CSSの書き方

    /*========= ナビゲーションのためのCSS ===============*/
    
    /*アクティブになったエリア*/
    #g-nav.panelactive{
    	/*position:fixed;にし、z-indexの数値を大きくして前面へ*/
    	position:fixed;
    	z-index: 999;
    	top: 0;
    	width:100%;
    	height: 100vh;
    }
    
    /*丸の拡大*/
    .circle-bg{
    	position: fixed;
    	z-index:3;
    
    	/*丸の形*/
    	width: 100px;
    	height: 100px;
    	border-radius: 50%;
    	background: #999;
    
    	/*丸のスタート位置と形状*/
    	transform: scale(0);/*scaleをはじめは0に*/
    	top:calc(50% - 50px);/*50%から円の半径を引いた値*/
    	left:calc(50% - 50px);/*50%から円の半径を引いた値*/
    	transition: all .6s;/*0.6秒かけてアニメーション*/
    }
    
    .circle-bg.circleactive{
    	transform: scale(50);/*クラスが付与されたらscaleを拡大*/
    }
    
    /*ナビゲーションの縦スクロール*/
    #g-nav-list{
    	display: none;/*はじめは表示なし*/
    
    	/*ナビの数が増えた場合縦スクロール*/
    	position: fixed;
    	z-index: 999; 
    	width: 100%;
    	height: 100vh;
    	overflow: auto;
    	-webkit-overflow-scrolling: touch;
    }
    
    #g-nav.panelactive #g-nav-list{
    	display: block; /*クラスが付与されたら出現*/
    }
    
    /*ナビゲーション*/
    #g-nav ul {
    	opacity: 0;/*はじめは透過0*/
    
    	/*ナビゲーション天地中央揃え※レイアウトによって調整してください。不必要なら削除*/
    	position: absolute;
    	z-index: 999;
    	top:50%;
    	left:50%;
    	transform: translate(-50%,-50%);
    }
    
    /*背景が出現後にナビゲーションを表示*/
    #g-nav.panelactive ul {
    	opacity:1;
    }
    
    /* 背景が出現後にナビゲーション li を表示※レイアウトによって調整してください。不必要なら削除*/
    #g-nav.panelactive ul li{
    	animation-name:gnaviAnime;
    	animation-duration:1s;
    	animation-delay:.2s;/*0.2 秒遅らせて出現*/
    	animation-fill-mode:forwards;
    	opacity:0;
    }
    
    @keyframes gnaviAnime{
    	0% {
    		opacity: 0;
    	}
    	100% {
    		opacity: 1;
    	}
    }
    
    /*リストのレイアウト設定*/
    #g-nav li{
    	text-align: center; 
    	list-style: none;
    }
    
    #g-nav li a{
    	color: #333;
    	text-decoration: none;
    	padding:10px;
    	display: block;
    	text-transform: uppercase;
    	letter-spacing: 0.1em;
    	font-weight: bold;
    }
    
    
    /*========= ボタンのためのCSS ===============*/
    .openbtn{
    	position:fixed;
    	top:10px;
    	right: 10px;
    	z-index: 9999;/*ボタンを最前面に*/
    	cursor: pointer;
    	width: 50px;
    	height:50px;
    }
    	
    /*×に変化*/	
    .openbtn span{
    	display: inline-block;
    	transition: all .4s;
    	position: absolute;
    	left: 14px;
    	height: 3px;
    	border-radius: 2px;
    	background-color: #666;
    	width: 45%;
    }
    
    .openbtn span:nth-of-type(1) {
    	top:15px;	
    }
    
    .openbtn span:nth-of-type(2) {
    	top:23px;
    }
    
    .openbtn span:nth-of-type(3) {
    	top:31px;
    }
    
    .openbtn.active span:nth-of-type(1) {
    	top: 18px;
    	left: 18px;
    	transform: translateY(6px) rotate(-45deg);
    	width: 30%;
    }
    
    .openbtn.active span:nth-of-type(2) {
    	opacity: 0;
    }
    
    .openbtn.active span:nth-of-type(3){
    	top: 30px;
    	left: 18px;
    	transform: translateY(-6px) rotate(45deg);
    	width: 30%;
    }
    

     

    JSの書き方

    $(".openbtn").click(function () {//ボタンがクリックされたら
    	$(this).toggleClass('active');//ボタン自身に activeクラスを付与し
    	$("#g-nav").toggleClass('panelactive');//ナビゲーションにpanelactiveクラスを付与
    	$(".circle-bg").toggleClass('circleactive');//丸背景にcircleactiveクラスを付与
    });
    
    $("#g-nav a").click(function () {//ナビゲーションのリンクがクリックされたら
    	$(".openbtn").removeClass('active');//ボタンの activeクラスを除去し
    	$("#g-nav").removeClass('panelactive');//ナビゲーションのpanelactiveクラスを除去
    	$(".circle-bg").removeClass('circleactive');//丸背景のcircleactiveクラスを除去
    });
    投稿日:2022年07月15日
  • クリックしたら円形背景が拡大(左下から)

    カテゴリー:メニュー


    768px以下で動きを変更しています。PCの場合はこのページで動きをご確認ください
     

    HTMLの書き方

    head終了タグ直前に自作のCSSを読み込みます。

    <link rel="stylesheet" type="text/css" href="css/5-1-23.css">

    body内にボタンとナビゲーションのHTMLを記載します。

    <div class="openbtn"><span></span><span></span><span></span></div>
    
    <nav id="g-nav">
    	<div id="g-nav-list"><!--ナビの数が増えた場合縦スクロールするためのdiv※不要なら削除-->
    		<ul>
    			<li><a href="#">Top</a></li> 
    			<li><a href="#">About</a></li> 
    			<li><a href="#">Service</a></li> 
    			<li><a href="#">Contact</a></li> 
    		</ul>
    	</div>
    </nav>
    <div class="circle-bg"></div>

    body 終了タグ直前に jQuery、動きを制御する自作のJS の2 つを読み込みます。

    <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
    <!--自作のJS-->
    <script src="js/5-1-23.js"></script>

     

    CSSの書き方

    /*========= ナビゲーションのためのCSS ===============*/
    
    /*アクティブになったエリア*/
    #g-nav.panelactive{
    	/*position:fixed;にし、z-indexの数値を大きくして前面へ*/
    	position:fixed;
    	z-index: 999;
    	top: 0;
    	width:100%;
    	height: 100vh;
    }
    
    /*丸の拡大*/
    .circle-bg{
    	position: fixed;
    	z-index:3;
    
    	/*丸の形*/
    	width: 100px;
    	height: 100px;
    	border-radius: 50%;
    	background: #999;
    
    	/*丸のスタート位置と形状*/
    	transform: scale(0);/*scaleをはじめは0に*/
    	left:-50px;
    	bottom:-50px;
    	transition: all .6s;/*0.6秒かけてアニメーション*/
    }
    
    .circle-bg.circleactive{
    	transform: scale(50);/*クラスが付与されたらscaleを拡大*/
    }
    
    /*ナビゲーションの縦スクロール*/
    #g-nav-list{
    	display: none;/*はじめは表示なし*/
    
    	/*ナビの数が増えた場合縦スクロール*/
    	position: fixed;
    	z-index: 999; 
    	width: 100%;
    	height: 100vh;
    	overflow: auto;
    	-webkit-overflow-scrolling: touch;
    }
    
    #g-nav.panelactive #g-nav-list{
    	display: block; /*クラスが付与されたら出現*/
    }
    
    /*ナビゲーション*/
    #g-nav ul {
    	opacity: 0;/*はじめは透過0*/
    	
    	/*ナビゲーション天地中央揃え※レイアウトによって調整してください。不必要なら削除*/
    	position: absolute;
    	z-index: 999;
    	top:50%;
    	left:50%;
    	transform: translate(-50%,-50%);
    }
    
    /*背景が出現後にナビゲーションを表示*/
    #g-nav.panelactive ul {
    	opacity:1;
    }
    
    /* 背景が出現後にナビゲーション li を表示※レイアウトによって調整してください。不必要なら削除*/
    #g-nav.panelactive ul li{
    	animation-name:gnaviAnime;
    	animation-duration:1s;
    	animation-delay:.2s;/*0.2 秒遅らせて出現*/
    	animation-fill-mode:forwards;
    	opacity:0;
    }
    
    @keyframes gnaviAnime{
    	0% {
    		opacity: 0;
    	}
    	100% {
    		opacity: 1;
    	}
    }
    
    
    /*リストのレイアウト設定*/
    #g-nav li{
    	text-align: center; 
    	list-style: none;
    }
    
    #g-nav li a{
    	color: #333;
    	text-decoration: none;
    	padding:10px;
    	display: block;
    	text-transform: uppercase;
    	letter-spacing: 0.1em;
    	font-weight: bold;
    }
    
    
    /*========= ボタンのためのCSS ===============*/
    .openbtn{
    	position:fixed;
    	top:10px;
    	right: 10px;
    	z-index: 9999;/*ボタンを最前面に*/
    	cursor: pointer;
    	width: 50px;
    	height:50px;
    }
    	
    /*×に変化*/	
    .openbtn span{
    	display: inline-block;
    	transition: all .4s;
    	position: absolute;
    	left: 14px;
    	height: 3px;
    	border-radius: 2px;
    	background-color: #666;
    	width: 45%;
    }
    
    .openbtn span:nth-of-type(1) {
    	top:15px;	
    }
    
    .openbtn span:nth-of-type(2) {
    	top:23px;
    }
    
    .openbtn span:nth-of-type(3) {
    	top:31px;
    }
    
    .openbtn.active span:nth-of-type(1) {
    	top: 18px;
    	left: 18px;
    	transform: translateY(6px) rotate(-45deg);
    	width: 30%;
    }
    
    .openbtn.active span:nth-of-type(2) {
    	opacity: 0;
    }
    
    .openbtn.active span:nth-of-type(3){
    	top: 30px;
    	left: 18px;
    	transform: translateY(-6px) rotate(45deg);
    	width: 30%;
    }
    

     

    JSの書き方

    $(".openbtn").click(function () {//ボタンがクリックされたら
    	$(this).toggleClass('active');//ボタン自身に activeクラスを付与し
    	$("#g-nav").toggleClass('panelactive');//ナビゲーションにpanelactiveクラスを付与
    	$(".circle-bg").toggleClass('circleactive');//丸背景にcircleactiveクラスを付与
    });
    
    $("#g-nav a").click(function () {//ナビゲーションのリンクがクリックされたら
    	$(".openbtn").removeClass('active');//ボタンの activeクラスを除去し
    	$("#g-nav").removeClass('panelactive');//ナビゲーションのpanelactiveクラスを除去
    	$(".circle-bg").removeClass('circleactive');//丸背景のcircleactiveクラスを除去
    });
    投稿日:2022年07月15日
  • クリックしたら円形背景が拡大(左上から)

    カテゴリー:メニュー


    768px以下で動きを変更しています。PCの場合はこのページで動きをご確認ください
     

    HTMLの書き方

    head終了タグ直前に自作のCSSを読み込みます。

    <link rel="stylesheet" type="text/css" href="css/5-1-22.css">

    body内にボタンとナビゲーションのHTMLを記載します。

    <div class="openbtn"><span></span><span></span><span></span></div>
    
    <nav id="g-nav">
    	<div id="g-nav-list"><!--ナビの数が増えた場合縦スクロールするためのdiv※不要なら削除-->
    		<ul>
    			<li><a href="#">Top</a></li> 
    			<li><a href="#">About</a></li> 
    			<li><a href="#">Service</a></li> 
    			<li><a href="#">Contact</a></li> 
    		</ul>
    	</div>
    </nav>
    <div class="circle-bg"></div>

    body 終了タグ直前に jQuery、動きを制御する自作のJS の2 つを読み込みます。

    <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
    <!--自作のJS-->
    <script src="js/5-1-22.js"></script>

     

    CSSの書き方

    /*========= ナビゲーションのためのCSS ===============*/
    
    /*アクティブになったエリア*/
    #g-nav.panelactive{
    	/*position:fixed;にし、z-indexの数値を大きくして前面へ*/
    	position:fixed;
    	z-index: 999;
    	top: 0;
    	width:100%;
    	height: 100vh;
    }
    
    /*丸の拡大*/
    .circle-bg{
    	position: fixed;
    	z-index:3;
    
    	/*丸の形*/
    	width: 100px;
    	height: 100px;
    	border-radius: 50%;
    	background: #999;
    
    	/*丸のスタート位置と形状*/
    	transform: scale(0);/*scaleをはじめは0に*/
    	left:-50px;
    	top:-50px;
    	transition: all .6s;/*0.6秒かけてアニメーション*/
    }
    
    .circle-bg.circleactive{
    	transform: scale(50);/*クラスが付与されたらscaleを拡大*/
    }
    
    /*ナビゲーションの縦スクロール*/
    #g-nav-list{
    	display: none;/*はじめは表示なし*/
    
    	/*ナビの数が増えた場合縦スクロール*/
    	position: fixed;
    	z-index: 999; 
    	width: 100%;
    	height: 100vh;
    	overflow: auto;
    	-webkit-overflow-scrolling: touch;
    }
    
    #g-nav.panelactive #g-nav-list{
    	display: block; /*クラスが付与されたら出現*/
    }
    
    /*ナビゲーション*/
    #g-nav ul {
    	opacity: 0;/*はじめは透過0*/
    
    	/*ナビゲーション天地中央揃え※レイアウトによって調整してください。不必要なら削除*/
    	position: absolute;
    	z-index: 999;
    	top:50%;
    	left:50%;
    	transform: translate(-50%,-50%);
    }
    
    /*背景が出現後にナビゲーションを表示*/
    #g-nav.panelactive ul {
    	opacity:1;
    }
    
    /* 背景が出現後にナビゲーション li を表示※レイアウトによって調整してください。不必要なら削除*/
    #g-nav.panelactive ul li{
    	animation-name:gnaviAnime;
    	animation-duration:1s;
    	animation-delay:.2s;/*0.2 秒遅らせて出現*/
    	animation-fill-mode:forwards;
    	opacity:0;
    }
    
    @keyframes gnaviAnime{
    	0% {
    		opacity: 0;
    	}
    	100% {
    		opacity: 1;
    	}
    }
    
    /*リストのレイアウト設定*/
    #g-nav li{
    	text-align: center; 
    	list-style: none;
    }
    
    #g-nav li a{
    	color: #333;
    	text-decoration: none;
    	padding:10px;
    	display: block;
    	text-transform: uppercase;
    	letter-spacing: 0.1em;
    	font-weight: bold;
    }
    
    
    /*========= ボタンのためのCSS ===============*/
    .openbtn{
    	position:fixed;
    	top:10px;
    	left: 10px;
    	z-index: 9999;/*ボタンを最前面に*/
    	cursor: pointer;
    	width: 50px;
    	height:50px;
    }
    
    	
    /*×に変化*/	
    .openbtn span{
    	display: inline-block;
    	transition: all .4s;
    	position: absolute;
    	left: 14px;
    	height: 3px;
    	border-radius: 2px;
    	background-color: #666;
    	width: 45%;
    }
    
    .openbtn span:nth-of-type(1) {
    	top:15px;	
    }
    
    .openbtn span:nth-of-type(2) {
    	top:23px;
    }
    
    .openbtn span:nth-of-type(3) {
    	top:31px;
    }
    
    .openbtn.active span:nth-of-type(1) {
    	top: 18px;
    	left: 18px;
    	transform: translateY(6px) rotate(-45deg);
    	width: 30%;
    }
    
    .openbtn.active span:nth-of-type(2) {
    	opacity: 0;
    }
    
    .openbtn.active span:nth-of-type(3){
    	top: 30px;
    	left: 18px;
    	transform: translateY(-6px) rotate(45deg);
    	width: 30%;
    }
    

     

    JSの書き方

    $(".openbtn").click(function () {//ボタンがクリックされたら
    	$(this).toggleClass('active');//ボタン自身に activeクラスを付与し
    	$("#g-nav").toggleClass('panelactive');//ナビゲーションにpanelactiveクラスを付与
    	$(".circle-bg").toggleClass('circleactive');//丸背景にcircleactiveクラスを付与
    });
    
    $("#g-nav a").click(function () {//ナビゲーションのリンクがクリックされたら
    	$(".openbtn").removeClass('active');//ボタンの activeクラスを除去し
    	$("#g-nav").removeClass('panelactive');//ナビゲーションのpanelactiveクラスを除去
    	$(".circle-bg").removeClass('circleactive');//丸背景のcircleactiveクラスを除去
    });
    投稿日:2022年07月15日
  • クリックしたら円形背景が拡大(右下から)

    カテゴリー:メニュー


    768px以下で動きを変更しています。PCの場合はこのページで動きをご確認ください
     

    HTMLの書き方

    head終了タグ直前に自作のCSSを読み込みます。

    <link rel="stylesheet" type="text/css" href="css/5-1-21.css">

    body内にボタンとナビゲーションのHTMLを記載します。

    <div class="openbtn"><span></span><span></span><span></span></div>
    
    <nav id="g-nav">
    	<div id="g-nav-list"><!--ナビの数が増えた場合縦スクロールするためのdiv※不要なら削除-->
    		<ul>
    			<li><a href="#">Top</a></li> 
    			<li><a href="#">About</a></li> 
    			<li><a href="#">Service</a></li> 
    			<li><a href="#">Contact</a></li> 
    		</ul>
    	</div>
    </nav>
    <div class="circle-bg"></div>

    body 終了タグ直前に jQuery、動きを制御する自作のJS の2 つを読み込みます。

    <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
    <!--自作のJS-->
    <script src="js/5-1-21.js"></script>

     

    CSSの書き方

    /*========= ナビゲーションのためのCSS ===============*/
    
    /*アクティブになったエリア*/
    #g-nav.panelactive{
    	/*position:fixed;にし、z-indexの数値を大きくして前面へ*/
    	position:fixed;
    	z-index: 999;
    	top: 0;
    	width:100%;
    	height: 100vh;
    }
    
    /*丸の拡大*/
    .circle-bg{
    	position: fixed;
    	z-index:3;
    
    	/*丸の形*/
    	width: 100px;
    	height: 100px;
    	border-radius: 50%;
    	background: #999;
    
    	/*丸のスタート位置と形状*/
    	transform: scale(0);/*scaleをはじめは0に*/
    	right:-50px;
    	bottom:-50px;
    	transition: all .6s;/*0.6秒かけてアニメーション*/
    }
    
    .circle-bg.circleactive{
    	transform: scale(50);/*クラスが付与されたらscaleを拡大*/
    }
    
    /*ナビゲーションの縦スクロール*/
    #g-nav-list{
    	display: none;/*はじめは表示なし*/
    
    	/*ナビの数が増えた場合縦スクロール*/
    	position: fixed;
    	z-index: 999; 
    	width: 100%;
    	height: 100vh;
    	overflow: auto;
    	-webkit-overflow-scrolling: touch;
    }
    
    #g-nav.panelactive #g-nav-list{
    	display: block; /*クラスが付与されたら出現*/
    }
    
    /*ナビゲーション*/
    #g-nav ul {
    	opacity: 0;/*はじめは透過0*/
    
    	/*ナビゲーション天地中央揃え※レイアウトによって調整してください。不必要なら削除*/
    	position: absolute;
    	z-index: 999;
    	top:50%;
    	left:50%;
    	transform: translate(-50%,-50%);
    }
    
    /*背景が出現後にナビゲーションを表示*/
    #g-nav.panelactive ul {
        opacity:1;
    }
    
    /* 背景が出現後にナビゲーション li を表示※レイアウトによって調整してください。不必要なら削除*/
    #g-nav.panelactive ul li{
    	animation-name:gnaviAnime;
    	animation-duration:1s;
    	animation-delay:.2s;/*0.2 秒遅らせて出現*/
    	animation-fill-mode:forwards;
    	opacity:0;
    }
    
    @keyframes gnaviAnime{
    	0% {
    		opacity: 0;
    	}
    	100% {
    		opacity: 1;
    	}
    }
    
    
    /*リストのレイアウト設定*/
    #g-nav li{
    	text-align: center; 
    	list-style: none;
    }
    
    #g-nav li a{
    	color: #333;
    	text-decoration: none;
    	padding:10px;
    	display: block;
    	text-transform: uppercase;
    	letter-spacing: 0.1em;
    	font-weight: bold;
    }
    
    
    /*========= ボタンのためのCSS ===============*/
    .openbtn{
    	position:fixed;
    	top:10px;
    	right: 10px;
    	z-index: 9999;/*ボタンを最前面に*/
    	cursor: pointer;
    	width: 50px;
    	height:50px;
    }
    	
    /*×に変化*/	
    .openbtn span{
    	display: inline-block;
    	transition: all .4s;
    	position: absolute;
    	left: 14px;
    	height: 3px;
    	border-radius: 2px;
    	background-color: #666;
    	width: 45%;
    }
    
    .openbtn span:nth-of-type(1) {
    	top:15px;	
    }
    
    .openbtn span:nth-of-type(2) {
    	top:23px;
    }
    
    .openbtn span:nth-of-type(3) {
    	top:31px;
    }
    
    .openbtn.active span:nth-of-type(1) {
    	top: 18px;
    	left: 18px;
    	transform: translateY(6px) rotate(-45deg);
    	width: 30%;
    }
    
    .openbtn.active span:nth-of-type(2) {
    	opacity: 0;
    }
    
    .openbtn.active span:nth-of-type(3){
    	top: 30px;
    	left: 18px;
    	transform: translateY(-6px) rotate(45deg);
    	width: 30%;
    }
    

     

    JSの書き方

    $(".openbtn").click(function () {//ボタンがクリックされたら
    	$(this).toggleClass('active');//ボタン自身に activeクラスを付与し
    	$("#g-nav").toggleClass('panelactive');//ナビゲーションにpanelactiveクラスを付与
    	$(".circle-bg").toggleClass('circleactive');//丸背景にcircleactiveクラスを付与
    });
    
    $("#g-nav a").click(function () {//ナビゲーションのリンクがクリックされたら
    	$(".openbtn").removeClass('active');//ボタンの activeクラスを除去し
    	$("#g-nav").removeClass('panelactive');//ナビゲーションのpanelactiveクラスを除去
    	$(".circle-bg").removeClass('circleactive');//丸背景のcircleactiveクラスを除去
    });
    
    投稿日:2022年07月15日
12 / 19TopPrev...1011121314...NextLast

アーカイブ

  • CSS (117)
    • スクロールダウン (8)
    • テキストナビゲーション (11)
    • ボタン (52)
    • メニュー (1)
    • 動画 (2)
    • 検索 (3)
    • 画像リンクの動き (23)
    • 背景の動き (17)
  • Illustrator (8)
  • JS (93)
    • アコーディオンパネル (2)
    • アニメーション (1)
    • エリアの動き (7)
    • ギャラリー (6)
    • グラフ (7)
    • スライド (9)
    • テキストの動き (17)
    • ニュースティッカー (1)
    • ページトップリンク (9)
    • ページ内リンク (2)
    • メニュー (28)
    • モーダルウィンドウ (1)
    • ローディング (3)
  • Photoshop (1)
  • PHP (20)
  • WordPress (4)
    • プラグイン (2)
    • リンク (1)
  • お客様観覧用 (11)
    • WEB制作プラン (1)
    • アニメーション (8)
    • グローバルナビゲーション (1)
    • スライド (1)
  • サーバー (6)
    • CPI (1)
  • 未分類 (6)
  • 法律 (2)
    • 医療法 (1)
    • 柔道整復師法 (1)
TOP
  • CSS
    • スクロールダウン
    • テキストナビゲーション
    • ボタン
    • メニュー
    • 動画
    • 検索
    • 画像リンクの動き
    • 背景の動き
  • Illustrator
  • JS
    • アコーディオンパネル
    • アニメーション
    • エリアの動き
    • ギャラリー
    • グラフ
    • スライド
    • テキストの動き
    • ニュースティッカー
    • ページトップリンク
    • ページ内リンク
    • メニュー
    • モーダルウィンドウ
    • ローディング
  • Photoshop
  • PHP
  • WordPress
    • プラグイン
    • リンク
  • お客様観覧用
    • WEB制作プラン
    • アニメーション
    • グローバルナビゲーション
    • スライド
  • サーバー
    • CPI
  • 未分類
  • 法律
    • 医療法
    • 柔道整復師法
© 2022 isen-print.