Perlについての質問です。


PerlによるCGIを用いてHTMLページを出力しているのですが、出力後に「スクロールバーを一番下に移動させる」という動作をさせるには、Perlで具体的にどのように記述すれば良いでしょうか。

回答の条件
  • 1人2回まで
  • 登録:2008/04/20 07:35:46
  • 終了:2008/04/27 07:40:02

回答(2件)

id:Mars No.1

Mars回答回数203ベストアンサー獲得回数202008/04/20 08:21:22

ポイント35pt

Perlにはそういう機能はないので、

Perlから吐き出すHTMLにJavascriptを記述する事でなら実現できます。

<head> ~ </head> に。
<script type="text/javascript">
window.onload=function(){
document.body.scrollTop = document.body.scrollHeight;
}
</script>

なお、doctype宣言により標準モードとなる場合は上記のままでは動作しません。

DOCTYPE 宣言による Property の違いについて : 独断と偏見の何でもレビュー

こちらを参考にJavascriptを修正するか(ブラウザによって違いがあるので面倒)、

フラグメントIDを書き換える方法をとります。

<head> ~ </head> に。
<script type="text/javascript">
window.onload=function(){
location.href='#footer';
}
</script>

body内末尾の要素にidを付けておく。
:
:
<XXX id="footer">~</XXX>
</body>
</html>
id:litt No.2

litt回答回数9ベストアンサー獲得回数12008/04/20 08:29:47

ポイント35pt

スクロールバーの移動はブラウザを制御することに他ならないのでPerlに限らずCGIで行うことはできません。

しかし、あまり行儀のいい方法ではないですがJavaScriptでリダイレクトさせることでそのように見せることは可能です。

bodyタグを<body onload="location.href='#hoge';">として

</body>の直前に<a name="hoge">を置いてやるのはどうでしょうか?

  • id:crashtruck
    メモ JavaScript フレームを連動 http://www.red.oit-net.jp/tatsuya/java/pageof0a.htm
  • id:crashtruck
    メモ
    JavaScript window.scroll()について
    http://www.red.oit-net.jp/tatsuya/java/scroll0a.htm
    http://www.tohoho-web.com/js/window.htm#Operate

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません