6-7-3-5. ページのトップへ戻るボタンの設置 jQuery
1. 親フレームも含めて、ページのトップに戻す
頁の最下部に、トップに戻るボタンを設置し、ボタンに触れると色を変えるように設定。
iframeを使用しているインナー画面だけを戻すと、ページ全体のトップには戻らない。
①.親フレームも含めて、ページのトップに戻す Java Script サンプル
<!-- ページの先頭へ戻るボタンの準備 ここから --> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> <script> $(function() { var topBtn = $('#page-top'); topBtn.click(function() { $( 'html,body' ).animate( { scrollTop: 0 }, 500 ); $( 'html,body', parent.document ).animate( { scrollTop: 0 }, 700 ); return false; }); }); </script>
②.トップに戻るボタン css サンプル
#page-top { position: fixed; bottom: 10px; right: 10px; font-size: 12px; } #page-top a { background: #000011; text-decoration: none; color: #ffffff; width: 100px; padding: 10px 0; text-align: center; display: block; border-radius: 5px; } #page-top a:hover { text-decoration: none; background: #FFCCFF; color: #000000; }
③.HTML サンプル
<div id="page-top"><a href="#wrapper">PAGE TOP ▲</a></div>
<p id="page-top"><a href="#wrap">PAGE TOP ▲</a></p>
2. iPad = Safari でも機能させる
上記のサンプルで、iPad の Safari ではボタンが表示されないトラブルに悩まされる。
結論:
◆ css は、外部ファイルにして読み込みでも OK だが、
◆ Java Script を外部ファイルにして読み込むとうまく行かず、
内部に直接記述すると OK となる。
3. ページの先頭に目次を設け、それぞれの章にリンクするとともに、目次に戻るボタンを設置する
①. Java Script サンプル
<!-- jQuery.jsの読み込み --> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> <!-- スムーズスクロール部分の記述 --> <script> $(function(){ // #で始まるアンカーをクリックした場合に処理 $('a[href^=#]').click(function() { // スクロールの速度 var speed = 400; // ミリ秒 // アンカーの値取得 var href= $(this).attr("href"); // 移動先を取得 var target = $(href == "#" || href == "" ? 'html' : href); // 移動先を数値で取得 - 固定ヘッダーの位置調整 var position = target.offset().top - 120; // スムーススクロール $('body,html').animate({scrollTop:position}, speed, 'swing'); return false; }); }); </script>
※ 15行目の ” - 120 ” は、戻る位置の調整値
②.トップに戻るボタン css サンプル
<style> div{width:auto; height:500px;} a.button{font-size:10px;} </style>
③.HTML サンプル
目次のリスト
<h3 id="jjindex">府県別の目次</h3> <ul> <li><a href="50-04jisya.html#jj25">25 滋賀県の神社・寺院</a></li> <li><a href="50-04jisya.html#jj26">26 京都府の神社・寺院</a></li> <li><a href="50-04jisya.html#jj27">27 大阪府の神社・寺院</a></li> <li><a href="50-04jisya.html#jj28">28 兵庫県の神社・寺院</a></li> <li><a href="50-04jisya.html#jj29">29 奈良県の神社・寺院</a></li> <li><a href="50-04jisya.html#jj30">30 和歌山県の神社・寺院</a></li> </ul>
各章での戻るボタン
<h3 id="jj28">28 兵庫県</h3> <p style="text-align:right;"><a class="button" href="50-04jisya.html#jjindex">▲ 目次にもどる</a></p>
※ SAFARI の場合、href に html 名称を付けないと、#id だけではうまく行かない。
4. スクロール中、戻るボタンを常に表示する
①. jQuery を使用しない方法
ページの途中に下記を記述。
<!-- 戻るボタン --> <a rel="nofollow" style="display:scroll;position:fixed;right:5px;" href="#" title="PAGE TOP ▲"> <img src="../images/pagetop1.jpg" width="40" height="35"></a>
iPad の Safari ではうまく行かない。設置したい位置に幾つも記述しなければならない。
②. 前記-1.の jQuery を使用した方法での解決策
下記の css を追記すると、完璧ではないが、何とかなった。
<style> div{width:auto; height:200px;} </style>
関連ページ
- ● 画面構成と
コンテンツの表示 - ● 画面種類と表示要領
- ● 当サイトの
CSS,HTML,PHP - ------------------------------
- ● Tableの使い方
(文字間の空白表示) - ● アクセスカウンター
設置要領 - ● ページトップへ戻る
jQuery ボタンの設置 - ● SyntaxHighlighter
ソースコードの掲載 - ● gif アニメーションの
作り方 - ● リストの作り方
- ● 区切り線の表示
-
▶ GPSデータを地図に
描画しサイトに表示 - ● Excel(エクセル)を
サイトに貼る方法 -
▶ 写真の撮影場所を
地図上で特定する - ------------------------------
- ● 環境の構築要領
- ● ホームページの
作り方ノウハウ集へ - ● 画面構成と
表示要領へ - ------------------------------
- ● 電子工作Topページへ
- ------------------------------