前提・実現したいこと
スクロールしたらフェードインで表示されるページ内リンクボタン(トップページボタン)を取り付けたい。
実際のコード
html
1<p class="pagetop" ontouchstart=""><a href="#mv">▲</a></p>
css
1.pagetop { 2 position: fixed; 3 bottom: 20px; 4 right: 30px; 5 z-index: 2000; 6} 7.pagetop a { 8 border-radius: 1em; 9 display: block; 10 background-color: #222; 11 text-align: center; 12 color: #ccc; 13 font-size: 20px; 14 text-decoration: none; 15 padding:3px 10px; 16 opacity: 0.8; 17 transition: all 0.4s; 18} 19.pagetop a:hover{ 20 border-radius: 0.5em; 21 display: block; 22 background-color: #b2d1fb; 23 text-align: center; 24 color: #fff; 25 font-size: 20px; 26 text-decoration: none; 27 padding:3px 10px; 28 opacity: 0.8; 29}
js
1$(function(){ 2 var pagetop = $('.pagetop'); 3 // ボタン非表示 4 pagetop.hide(); 5 6 // 10px スクロールしたらボタン表示 7 $(window).scroll(function () { 8 if ($(this).scrollTop() > 10) { 9 pagetop.fadeIn(); 10 } else { 11 pagetop.fadeOut(); 12 } 13 }); 14 pagetop.click(function () { 15 $('body, html').animate({ scrollTop: 0 }, 500); 16 return false; 17 }); 18 });
試したこと
トップページボタンはフェードインで表示されず、非表示のままです。
また、cssやhtmlがそもそも間違っているのかと思い、jsを消してみました。その結果、ボタンはしっかりと表示されていました。
その後、こちらのjsが反応しているか確認するため、pagetop.hide();のhideを削除してみたところボタンが表示されました。
jsは問題なく動いているかと思います。
追記(コード全体)
html
1<!DOCTYPE html> 2<html lang="ja"> 3<head> 4 5<meta charset="UTF-8"> 6<title>Portfolio</title> 7<link rel="stylesheet" href="css/style.css"> 8<link rel="stylesheet" href="css/normalize.css"> 9 10<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css"/> 11<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" crossorigin="anonymous"> 12 13<link rel="preconnect" href="https://fonts.gstatic.com"> 14<link href="https://fonts.googleapis.com/css2?family=Permanent+Marker&display=swap" rel="stylesheet"> 15 16<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script> 17<meta name="viewport" content="width=device-width,initial-scale=1.0,viewport-fit=cover"> 18 19<link rel="icon" type="image/x-icon" href="img/logo.png"> 20</head> 21 22<body> 23 24 <!-- openning --> 25 <div class="open"> 26 <img src="img/cloud.gif"/> 27 </div> 28 29 <!-- out --> 30 <div id="out"> 31 32 <p class="pagetop" ontouchstart=""><a href="#mv">▲</a></p> 33 34 <!-- scroll area --> 35 <section class="area"> 36 37 <!-- top --> 38 <div id="mv"> 39 40 <!-- header --> 41 <header> 42 <div id="head-box"> 43 <div id="head-color"></div> 44 <a href="index.html"><img src="img/logo.png" alt=""></a> 45 <p id="h-p"><ruby>和<rt>wa</rt></ruby>rtfolio</p> 46 </div> 47 </header> 48 49 <div class="sisi-box"> 50 <img src="img/sisi.png" alt="唐獅子" id="sisi"> 51 </div> 52 53 <div class="swirl-box"> 54 <img src="img/ swirl.png" alt="" id="swirl1"> 55 <img src="img/ swirlh.png" alt="" id="swirlh1"> 56 <img src="img/ swirl.png" alt="" id="swirl2"> 57 <img src="img/ swirlh.png" alt="" id="swirlh2"> 58 <img src="img/ swirl.png" alt="" id="swirl3"> 59 <img src="img/ swirl.png" alt="" id="swirl4"> 60 <img src="img/ swirlh.png" alt="" id="swirlh4"> 61 <img src="img/ swirl.png" alt="" id="swirl5"> 62 <img src="img/ swirlh.png" alt="" id="swirlh5"> 63 <img src="img/ swirl.png" alt="" id="swirl6"> 64 </div> 65 66 <ul id="nav-box"> 67 <a href="works.html#window" id="work"><li class="fadein nav1">WORK</li></a> 68 <a href="profile.html#window" id="profile"><li class="fadein nav2">PROFILE</li></a> 69 <a href="contact.html#window" id="contact"><li class="fadein nav3">CONTACT</li></a> 70 </ul> 71 72 <div id="lant-box"> 73 <a href="index.html"><img src="img/lantern.png" alt="" id="lant"></a> 74 </div> 75 76 </div> 77 78 </section> 79 80 <!-- scroll area --> 81 <section class="area"> 82 83 <!-- window --> 84 <div id="window"> 85 86 <!-- middle --> 87 <div id="middle"> 88 <div id="rm-box"></div> 89 </div> 90 91 <div class="content" id="content" ontouchstart=""> 92 <div class="room-box"> 93 94 <!-- magatama --> 95 <div id="mt-box" ontouchstart=""> 96 <img src="img/magatama.png" usemap="#ImageMap" alt="" id="mt"> 97 <map name="ImageMap"> 98 <area id="maga1" shape="poly" coords="114,34,127,27,146,24,161,25,177,28,193,33,216,45,231,57,246,71,257,90,268,115,274,135,275,150,275,161,274,171,273,179,267,166,264,156,258,147,252,140,242,132,236,128,215,121,197,122,188,125,174,128,152,136,141,136,130,133,124,132,117,129,109,122,101,111,94,99,92,85,92,76,94,66,99,52,106,43,110,38,114,36,114,36" alt="緑" /> 99 <area id="maga2" shape="poly" coords="63,245,68,249,73,253,83,259,95,265,110,270,122,273,138,276,152,277,161,277,173,275,184,273,202,267,214,260,225,253,232,245,243,237,249,230,257,217,261,210,266,196,268,185,265,168,262,159,257,152,252,146,240,137,230,132,216,129,203,128,195,130,186,132,176,138,171,142,167,148,162,154,159,161,156,170,154,181,152,189,149,199,147,206,144,214,141,221,133,230,128,234,120,239,112,243,99,247,92,247,81,247,74,246,69,246,64,244,83,247" alt="黄色" /> 100 <area id="maga3" shape="poly" coords="106,34,98,35,91,38,85,41,79,45,75,48,69,53,63,57,61,59,57,62,52,71,47,76,45,78,36,92,34,101,32,104,28,116,25,125,24,136,22,149,23,160,24,167,25,177,27,184,28,189,32,201,37,211,40,216,44,224,48,227,54,232,61,236,67,238,78,241,90,242,102,241,109,238,114,235,119,232,123,229,126,226,132,221,136,215,141,207,144,198,144,192,146,187,144,176,145,203,146,184,143,170,139,164,137,159,130,149,123,142,119,140,111,132,108,129,105,125,96,117,92,109,89,99,87,86,89,70,90,63,92,58,93,54,96,49,98,44,101,41,104,36,104,36" alt="赤" /> 101 </map> 102 </div> 103 104 105 <p class='navT'>勾玉をクリックしてください</p> 106 <!-- door --> 107 <div class="left"><a href="javascript:cL();"></a></div> 108 <div class="right"><a href="javascript:cR();"></a></div> 109 </div> 110 111 </div> 112 113 </div> 114 115 </section> 116 117 </div> 118 119<script src="javascript/jquery.js"></script> 120<script src="javascript/pagetop.js"></script> 121<script src="javascript/openning.js"></script> 122 123<script type="text/javascript" >src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script> 124<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js" integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI" crossorigin="anonymous"></script> 125 126</body> 127 128</html>
htmlの書き方に問題があったりしますでしょうか?
追記2
openning.js
1$(function () { 2 setTimeout(function () { 3 $('.open').fadeOut(); 4 }, 1500); 5 }); 6 7 $(function () { 8 $("#out").css({ 9 opacity: '1' 10 }); 11 setTimeout(function () { 12 $("#out").css("display", "block"); 13 $("#out").stop().animate({ 14 opacity: '1' 15 }, 1000); 16 }, 1800); 17 });
こちら消すとボタンが表示されるようになりました。
回答1件
あなたの回答
tips
プレビュー