■画像位置指定が好みの位置に簡単にできるように修正しました。■
時々、「おお、こんな短いソースで動くのか!」と、感動するJavaScriptに出会うことがあります。
これもそうです。なんと、1時間ごとに24枚の画像が変わります。なのに、このソースの単純さ!
画像指定の方法は、連番指定という方法です。画像ファイル名の付け方にコツがあります。
以下、原本の注意書き↓
一時間おきに表示する画像を変えます。
使用するに先立って、ファイル名を image0.jpg、image1.jpg、image2.jpg ・・・ image23.jpgまでの24個を用意する必要があります。
ファイル名のつけ方は、必ず上述のようにする必要があります。別に使用する画像はjpgでもgifでもかまいません。gifを使用する場合は、スクリプトを適当に編集してください。(★当サイトではgifを使用)
以下に、CSSでの装飾を省いたJavaScriptのソースを載せて、説明します。CSSも付けた全ソースは一番下にあります。
<!DOCTYPE html>
<html lang="ja">
<head>
<meta http-equiv="Content-type" content="text/html; charset=Shift_JIS">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<meta http-equiv="Content-Style-Type" content="text/css">
<title>1時間ごとに画像変化</title>
</head>
<body>
<!--★ここからコピー-->
<img src="" id="Ga">
<script type="text/javascript">
<!--
/*=============================================================
参考・1時間ごとに画像が変化 By http://freett.com/nihonkyokujituto/download/javasc/js_top.htm
★document.write記述を削除 2015/01/15
=============================================================*/
var h= (new Date()).getHours();
var ga="image"+h+".jpg";
Ga.src = ga;
Ga.title=""+h+"時過ぎだよ!";
//-->
</script>
<!--★ここまでコピー-->
</body>
</html>
さて、重要な点が二つあります。
第一は原本でも説明されている、画像指定の方法です。
原本通りの画像指定の場合、上記の見本ソース通り var ga="image"+h+".jpg"; です。
しかし画像の名前が、mini0.png から mini23.png の24枚だったら → var ga="mini"+h+".png";
それが image というフォルダーに入っていたら → var ga="image/mini"+h+".png";
そのフォルダーが、この html よりも一つ上の階層にあったら → var ga="../image/mini"+h+".png";
画像の名前が img0mini.gif から img23mini.gif の24枚だったら → var ga="img"+h+"mini.gif";
画像の名前が 0.jpg から 23.jpg の24枚だったら → var ga=""+h+".jpg"; 又は、var ga=h+".jpg";
上記見本を見ればわかる通り、24枚の画像ファイル名は 0 から 23 までの数字以外が、全部同じです。
そして同じでさえあれば、どんなふうにでも指定可能です。
第二の重要点は、原本には無い Ga の指定です。
この指定をすることで、CSSでいろいろな装飾ができます。そして絶対位置指定も可能です(topから●pxで leftから●pxという指定方法)。
でもそんな指定方法ではなく、いろいろな文章を書いた、その直下に表示したいという時。
<img src="" id="Ga">をその表示したい位置に記述して下さい。それを記述した位置が、画像表示位置になります。
前回では、「表示したい位置にJavaScriptのソースを全部書く」と説明しましたが、今回修正しました。この方がわかりやすいと思います。
そのかわり、絶対位置だろうと好みの位置指定だろうと、必ずbodyの中に
<img src="" id="Ga">の記述が必要です。
img src="" の "" には、画像名は記述しないでよいです。
(上記をコピペされる時は、< と > は半角文字に変更して下さい。)
最後にオマケで記述した Ga.title=""+h+"時過ぎだよ!"; の説明。
title=""を指定すると、画像にマウスオーバーした時に、説明文字が出ます。
この場合 "+h+" 指定をしているので、その時の時刻がでます。
「時過ぎだよ!」の部分は、何時でも出る共通分なので、自分の好みで変更できます。
「時になったよ♪」でも「時になりました」でもいいし、不要なら Ga.title=""+h+"時過ぎだよ!"; の部分を全部削除して下さい。
でも、ほんとうに1時間ごとに画像が変わってるのかなぁと不安な方。
いちいちこのJavaScriptのページを探すのもたいへんでしょうから、メニューの『その他』のボタンをクリック。
そのページのタイトル画像の左横に同じ画像を表示しているので、時間ごとにチェックしてみて下さい。
このJavaScriptを基本にした、応用編の説明ページはこちらです。
◆全ソース◆
ソースの中でマウスの右クリックで『すべて選択』した後に、
再度右クリックして『コピー』