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

JS

カテゴリーページ

  • ページ内にある指定の範囲内で下から出現

    カテゴリー:ページトップリンク


     

    HTMLの書き方

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

    <link rel="stylesheet" type="text/css" href="css/8-1-4.css">

    body内にページトップリンクとコンテンツのHTMLを記載します。

    <header id="header">
    	<h1>Logo</h1>
    </header>
    
    <main>
    	<section id="area-1">
    		<h2>Area 1</h2>
    		<p>内容が入ります。</p>
    	<!--/area1--></section>
    
    	<section id="area-2">
    		<h2>Area 2</h2>
    		<p>内容が入ります。</p>
    	<!--/area2--></section>
    
    	<section id="area-3"><!--今回はarea-3の範囲に入ったらページトップリンクを出現させる-->
    		<h2>Area 3</h2>
    		<p>内容が入ります。</p>
    	<!--/area3--></section>
    
    	<section id="area-4">
    		<h2>Area 4</h2>
    		<p>内容が入ります。</p>
    	<!--/area4--></section>
    <!--/main--></main>
    
    <footer id="footer">
    	<p id="page-top" class="hide-btn"><a href="#">Page Top</a></p>
    	<small>&copy; copyright.</small>
    </footer>

    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/8-1-4.js"></script>

     

    CSSの書き方

    /*リンクの形状*/
    #page-top a{
    	display: flex;
    	justify-content:center;
    	align-items:center;
    	background:#942D2F;
    	border-radius: 5px;
    	width: 60px;
    	height: 60px;
    	color: #fff;
    	text-align: center;
    	text-transform: uppercase; 
    	text-decoration: none;
    	font-size:0.6rem;
    	transition:all 0.3s;
    }
    
    #page-top a:hover{
    	background: #777;
    }
    
    @media screen and (max-width:768px) {
    	#page-top a:hover{
    		background:#942D2F;
    	}   
    }
    
    /*リンクを右下に固定*/
    #page-top {
    	position: fixed;
    	right: 10px;
    	bottom:10px;
    	z-index: 2;
    
    	/*はじめは非表示*/
    	opacity: 0;
    	transform: translateY(100px);
    }
    
    /*上に上がる動き*/
    #page-top.UpMove{
    	animation: UpAnime 0.5s forwards;
    }
    
    @keyframes UpAnime{
    	from {
    		opacity: 0;
    		transform: translateY(100px);
    	}
    	to {
    		opacity: 1;
    		transform: translateY(0);
    	}
    }
    
    /*下に下がる動き*/
    #page-top.DownMove{
    	animation: DownAnime 0.5s forwards;
    }
    
    @keyframes DownAnime{
    	from {
    		opacity: 1;
    		transform: translateY(0);
    	}
    	to {
    		opacity: 1;
    		transform: translateY(100px);
    	}
    }
    
    /*検証のためのCSS*/
    section{
    	padding: 500px 0;
    }
    

     

    JSの書き方

    //スクロールした際の動きを関数でまとめる
    function setFadeElement(){
    	var windowH = $(window).height();	//ウィンドウの高さを取得
    	var scroll = $(window).scrollTop(); //スクロール値を取得
        
    	//出現範囲の指定
    	var contentsTop = Math.round($('#area-3').offset().top);	//要素までの高さを四捨五入した値で取得
    	var contentsH = $('#area-3').outerHeight(true);	//要素の高さを取得
        
    	//2つ目の出現範囲の指定※任意
    	//var contentsTop2 = Math.round($('#area-5').offset().top);	//要素までの高さを取得
    	//var contentsH2 = $('#area-5').outerHeight(true);//要素の高さを取得
    
    	//出現範囲内に入ったかどうかをチェック
    	if(scroll+windowH >= contentsTop && scroll+windowH  <= contentsTop+contentsH){
    		$("#page-top").addClass("UpMove"); //入っていたらUpMoveをクラス追加
    		$("#page-top").removeClass("DownMove"); //DownMoveを削除
    		$(".hide-btn").removeClass("hide-btn"); //hide-btnを削除 
    	}//2つ目の出現範囲に入ったかどうかをチェック※任意
    
    	// else if(scroll+windowH >= contentsTop2 && scroll+windowH <= contentsTop2+contentsH2){       
    		//$("#page-top").addClass("UpMove");    //入っていたらUpMoveをクラス追加
    		//$("#page-top").removeClass("DownMove");   //DownMoveを削除
    	//}//それ以外は
    	else{
    		if(!$(".hide-btn").length){ //サイト表示時にDownMoveクラスを一瞬付与させないためのクラス付け。hide-btnがなければ下記の動作を行う
    			$("#page-top").addClass("DownMove");  //DownMoveをクラス追加
    			$("#page-top").removeClass("UpMove"); //UpMoveを削除	
    		}
    	}
    }
    
    // 画面をスクロールをしたら動かしたい場合の記述
    $(window).scroll(function () {
    	setFadeElement();/* スクロールした際の動きの関数を呼ぶ*/
    });
    
    // ページが読み込まれたらすぐに動かしたい場合の記述
    $(window).on('load', function () {
    	setFadeElement();/* スクロールした際の動きの関数を呼ぶ*/
    });
    
    // #page-topをクリックした際の設定
    $('#page-top').click(function () {
    	$('body,html').animate({
    		scrollTop: 0//ページトップまでスクロール
    	}, 500);//ページトップスクロールの速さ。数字が大きいほど遅くなる
    	return false;//リンク自体の無効化
    });
    投稿日:2022年07月28日
  • ページの指定の高さを超えたら右から出現

    カテゴリー:ページトップリンク


     

    HTMLの書き方

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

    <link rel="stylesheet" type="text/css" href="css/8-1-3.css">

    body内のページトップリンクを表示させたい場所にHTMLを記載します。

    <p id="page-top"><a href="#">Page Top</a></p>

    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/8-1-3.js"></script>

     

    CSSの書き方

    /*リンクの形状*/
    #page-top a{
    	display: flex;
    	justify-content:center;
    	align-items:center;
    	background:#942D2F;
    	border-radius: 5px;
    	width: 60px;
    	height: 60px;
    	color: #fff;
    	text-align: center;
    	text-transform: uppercase; 
    	text-decoration: none;
    	font-size:0.6rem;
    	transition:all 0.3s;
    }
    
    #page-top a:hover{
    	background: #777;
    }
    
    /*リンクを右下に固定*/
    #page-top {
    	position: fixed;
    	right: 10px;
    	bottom:10px;
    	z-index: 2;
    
    	/*はじめは非表示*/
    	opacity: 0;
    	transform: translateX(100px);
    }
    
    /*左の動き*/
    #page-top.LeftMove{
    	animation: LeftAnime 0.5s forwards;
    }
    
    @keyframes LeftAnime{
    	from {
    		opacity: 0;
    		transform: translateX(100px);
    	}
    	to {
    		opacity: 1;
    		transform: translateX(0);
    	}
    }
    
    /*右の動き*/
    #page-top.RightMove{
    	animation: RightAnime 0.5s forwards;
    }
    
    @keyframes RightAnime{
    	from {
    		opacity: 1;
    		transform: translateX(0);
    	}
    	to {
    		opacity: 1;
    		transform: translateX(100px);
    	}
    }
    

     

    JSの書き方

    //スクロールした際の動きを関数でまとめる
    function PageTopAnime() {
    	var scroll = $(window).scrollTop();
    	if (scroll >= 200){//上から200pxスクロールしたら
    		$('#page-top').removeClass('RightMove');//#page-topについているRightMoveというクラス名を除く
    		$('#page-top').addClass('LeftMove');//#page-topについているLeftMoveというクラス名を付与
    	} else {
    	if(
    		$('#page-top').hasClass('LeftMove')){//すでに#page-topにLeftMoveというクラス名がついていたら
    			$('#page-top').removeClass('LeftMove');//LeftMoveというクラス名を除き
    			$('#page-top').addClass('RightMove');//RightMoveというクラス名を#page-topに付与
    		}
    	}
    }
    
    // 画面をスクロールをしたら動かしたい場合の記述
    $(window).scroll(function () {
    	PageTopAnime();/* スクロールした際の動きの関数を呼ぶ*/
    });
    
    // ページが読み込まれたらすぐに動かしたい場合の記述
    $(window).on('load', function () {
    	PageTopAnime();/* スクロールした際の動きの関数を呼ぶ*/
    });
    
    
    // #page-topをクリックした際の設定
    $('#page-top').click(function () {
    	$('body,html').animate({
    		scrollTop: 0//ページトップまでスクロール
    	}, 500);//ページトップスクロールの速さ。数字が大きいほど遅くなる
    	return false;//リンク自体の無効化
    });
    投稿日:2022年07月28日
  • ページの指定の高さを超えたら下から出現

    カテゴリー:ページトップリンク


     

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

    <link rel="stylesheet" type="text/css" href="css/8-1-2.css">

    body内のページトップリンクを表示させたい場所にHTMLを記載します。

    <p id="page-top"><a href="#">Page Top</a></p>

    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/8-1-2.js"></script>

     

    CSSの書き方

    /*リンクの形状*/
    #page-top a{
    	display: flex;
    	justify-content:center;
    	align-items:center;
    	background:#942D2F;
    	border-radius: 5px;
    	width: 60px;
    	height: 60px;
    	color: #fff;
    	text-align: center;
    	text-transform: uppercase; 
    	text-decoration: none;
    	font-size:0.6rem;
    	transition:all 0.3s;
    }
    
    #page-top a:hover{
    	background: #777;
    }
    
    /*リンクを右下に固定*/
    #page-top {
    	position: fixed;
    	right: 10px;
    	bottom:10px;
    	z-index: 2;
    	/*はじめは非表示*/
    	opac
    	ity: 0;
    	transform: translateY(100px);
    }
    
    /* 上に上がる動き */
    #page-top.UpMove{
    	animation: UpAnime 0.5s forwards;
    }
    
    @keyframes UpAnime{
    	from {
    		opacity: 0;
    		transform: translateY(100px);
    	}
    	to {
    		opacity: 1;
    		transform: translateY(0);
    	}
    }
    
    /* 下に下がる動き */
    #page-top.DownMove{
    	animation: DownAnime 0.5s forwards;
    }
    
    @keyframes DownAnime{
    	from {
    		opacity: 1;
    		transform: translateY(0);
    	}
    	to {
    		opacity: 1;
    		transform: translateY(100px);
    	}
    }
    

     

    JSの書き方

    //スクロールした際の動きを関数でまとめる
    function PageTopAnime() {
    	var scroll = $(window).scrollTop();
    	if (scroll >= 200){//上から200pxスクロールしたら
    		$('#page-top').removeClass('DownMove');//#page-topについているDownMoveというクラス名を除く
    		$('#page-top').addClass('UpMove');//#page-topについているUpMoveというクラス名を付与
    	} else {
    		if($('#page-top').hasClass('UpMove')){//すでに#page-topにUpMoveというクラス名がついていたら
    			$('#page-top').removeClass('UpMove');//UpMoveというクラス名を除き
    			$('#page-top').addClass('DownMove');//DownMoveというクラス名を#page-topに付与
    		}
    	}
    }
    
    // 画面をスクロールをしたら動かしたい場合の記述
    $(window).scroll(function () {
    	PageTopAnime();/* スクロールした際の動きの関数を呼ぶ*/
    });
    
    // ページが読み込まれたらすぐに動かしたい場合の記述
    $(window).on('load', function () {
    	PageTopAnime();/* スクロールした際の動きの関数を呼ぶ*/
    });
    
    // #page-topをクリックした際の設定
    $('#page-top a').click(function () {
    	$('body,html').animate({
    		scrollTop: 0//ページトップまでスクロール
    	}, 500);//ページトップスクロールの速さ。数字が大きいほど遅くなる
    	return false;//リンク自体の無効化
    });
    
    投稿日:2022年07月28日
  • ページの先頭にスムーススクロール

    カテゴリー:ページトップリンク


     

    HTMLの書き方

    body内のページの先頭に戻るリンクを表示させたい場所にHTMLを記載します。

    <p id="page-top"><a href="#">Page Top</a></p>

    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/8-1-1.js"></script>

     

    JSの書き方

    // #page-topをクリックした際の設定
    $('#page-top').click(function () {
    	$('body,html').animate({
    		scrollTop: 0//ページトップまでスクロール
    	}, 500);//ページトップスクロールの速さ。数字が大きいほど遅くなる
    	return false;//リンク自体の無効化
    });
    投稿日:2022年07月28日
2 / 2Prev12

アーカイブ

  • 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.