こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

ページトップへスクロール

webページをスクロールしていくと最後に「ページトップへ」のようなリンクがあって、クリックするとスクロールしてページトップでゆっくり止まるjavaを使用しているんですが、javaをオフにしているユーザーのために、同じリンクボタンで普通のアンカーでトップページに切り替わる(name属性を使った方法)のも併用したいのですがどうすれば良いのでしょうか。
リンク部分のソースはこれです。
<a href="javascript:pageup()">pagetop</a>

投稿日時 - 2006-05-03 18:09:44

QNo.2129085

ao_

困ってます

質問者が選んだベストアンサー

最初に訂正。
JavaとJavaScriptはまるっきり違うものなので、Javaと書くと回答される方が困惑します。

で、方法ですが、
<script type="text/javascript">
<!--
document.write('<a href="javascript:pageup()">pagetop</a>');
// -->
</script>
<noscript>
<a href="#pagetop">pagetop</a>
</noscript>

とすることで、JavaScriptが有効な人には
<a href="javascript:pageup()">pagetop</a>
が表示され、
JavaScriptが無効、もしく対応していないブラウザの人には
<a href="#pagetop">pagetop</a>
が表示されるようになります。

投稿日時 - 2006-05-03 20:37:01

お礼

ありがとうございます。
また、ご指摘ありがとうございます。
JavaScriptに関しては全くの素人なので続けてお伺いしたいのですが、ご回答頂いた<script type="text/javascript">~</noscript>はhtml内に書くのでしょうか。できれば外部JavaScriptで済ませたいのですが… 

投稿日時 - 2006-05-04 09:11:32

このQ&Aは役に立ちましたか?

2人が「このQ&Aが役に立った」と投票しています

回答(3)

呼び出す部分は<body></body>内に書くので、外部.jsからというのはちょっと難しいですね。

また、<noscript>はJavaScript無効の方へ必須なので、どうしても書かなくてはなりません。

投稿日時 - 2006-05-04 17:31:51

お礼

ありがとうございます。
見事にできました!

投稿日時 - 2006-05-04 19:28:14

ANo.2

<script language=javascript>
<!--
document.write('<a href="javascript:pageup()">pagetop</a>');
//-->
</script>
<noscript>
<a href="#">pagetop</a>
</noscript>

可能であれば、ページの頭にアンカーつけておくと
確実性があがります。
<a name="top"></a>

投稿日時 - 2006-05-03 20:42:28

お礼

ありがとうございます。
「href="#"」はそのページ自体を再度読み込み頭から表示されている状態にするってことですよね。確かに挙動は<a name="top"></a>を使った時と同じですね。

投稿日時 - 2006-05-04 09:13:59

あなたにオススメの質問