サイト運営の話」カテゴリーアーカイブ

地図にマウスを乗せると画像が表示する

兼六園の地図と金沢城の地図は名所の文字をクリックすると小さなウインドウが開いて画像と名前を表示するようになっていたのですが,地図を変更したついでに地図上の名所の文字にマウスを乗せるだけで,その名所の画像が出るように変えようと,試行錯誤してみました。

最初,地図は名所の文字をクリックすると小さなウインドウが開いて画像と名前を表示するようにしていたのですが,これはホームページビルダーのイメージマップの編集を利用してリンクを作成してから,ちょっと書き換えます。
ホームページビルダーのイメージマップの編集を利用してkyokusui.htmlというページにリンクするようにすると
<IMG src=”kenrokumei.gif” alt=”兼六園の園内の地図” width=”893″ height=”800″ border=”0″ ” >
という行が<IMG src=”kenrokumei.gif” alt=”兼六園の園内の地図” width=”893″ height=”800″ border=”0″ ” usemap=”#kenrokumei”>
という行に書き換えられ
<MAP name=”kenrokumei”>
  <AREA href=”https://kimassi.net/kenrokumei/kyokusui.html” target=”_blank” shape=”rect” coords=”655,459,712,482″>
  <AREA shape=”default” nohref>
</MAP>
という文が挿入されます。
新しい小さなウインドウを開く場合はJavaスクリプトを利用するために</HEAD>より上の行に
<script language=”JavaScript”>
<!–
function opgazou(url,winname,size) { window.open(url,winname,size);
}
//–>
</script>
という文を挿入し
<MAP name=”kenrokumei”>
  <AREA href=”https://kimassi.net/kenrokumei/kyokusui.html” target=”_blank” shape=”rect” coords=”655,459,712,482″>
  <AREA shape=”default” nohref>
</MAP>

<MAP name=”kenrokumei”>
<AREA href=”#” onclick=”opgazou(‘https://kimassi.net/kenrokumei/kyokusui.html’,”,’width=240,height=220′);return false;” shape=”rect” coords=”655,459,712,482″>
  <AREA shape=”default” nohref>
</MAP>
という具合に変更します。

次にマウスを地図上の文字にのせると小さい画像を表示するようにするには
<AREA href=”#” onclick=”opgazou(‘https://kimassi.net/kenrokumei/kyokusui.html’,”,’width=240,height=220′);return false;” shape=”rect” coords=”655,459,712,482″>
の部分を
  <AREA href=”#” onMouseOver=”opgazou(‘https://kimassi.net/kenrokumei/kyokusui.html’,”,’width=240,height=220′);return false;” shape=”rect” coords=”655,459,712,482″>
に変更しました。これによってマウスを乗せることにより小さなウインドウが開いて画像と名前を表示するようになります。
でもポップアップブロッカーがオンになっていると表示されませんし,マウスを乗せる度に,新しいウインドウが開いて,閉じるには,ひとつずつ閉じないのといけないので面倒です。
そこでとりあえずマウスが離れるとウインドウが閉じるようにしようとしました。
<script language=”JavaScript”>
<!–
function opgazou(url,winname,size) { window.open(url,winname,size);
}
//–>
</script>
の部分にウインドウを閉じる命令を追加して
<script language=”JavaScript”>
<!–
function opgazou(url,winname,size) { window.open(url,winname,size);
}
function clgazou() { window.close();
}
//–>
</script>
にします。
  <AREA href=”#” onMouseOver=”opgazou(‘https://kimassi.net/kenrokumei/kyokusui.html’,”,’width=240,height=220′);return false;” shape=”rect” coords=”655,459,712,482″>
の部分は
  <AREA href=”#” onMouseOver=”opgazou(‘https://kimassi.net/kenrokumei/kyokusui.html’,”,’width=240,height=220′);return false;” shape=”rect” coords=”655,459,712,482″ onmouseout=”clgazou();”>
にしました。
ところがウインドウを閉じますかのコメントが表示されて,閉じるのボタンを押すと地図のページが閉じてしまいました。こりゃあかん!
これでは都合が悪いので,onmouseoutを使うのはやめて,新しく開いたウインドウが一定時間たつと自動的に閉じるようにしました。これでウインドウを閉じる必要が無くなります。
kyokusui.htmlの
<BODY>を
<BODY onLoad=”setTimeout(‘window.close()’,10000)”>
に変えると10秒後に自動的に閉じるようになりました。5秒後に閉じるようにするには
<BODY onLoad=”setTimeout(‘window.close()’,5000)”>
にすれば良いです。

どちらにしても,ポップアップブロッカーがオンになっていると表示されないので,何か良い方法がないか調べてみるとJavaスクリプトを使わずにタグを利用してマウスを乗せたときに画像が表示してマウスを離した時に画像が消える方法があることを知りました。

http://netneko.jp/homepage/textgazou.html
を参考に,いろいろ試行錯誤して遂に思い通りのページにすることができました。ただ,偶然に思い通りの動作するようになったので,実際にどういう文法でどういう動作をしているのかは理解していません。
まずスタイルシートを利用して地図の重要でない部分に画像を表示するスペースを設けて基本になる画像を表示させます。今回は地図にマウスを乗せると画像が表示しますよという説明文の画像を表示するようにしました。下記のwidth : 240px;height : 220pxが画像を表示する大きさで,top : 800px;left : 670pxは画像を表示する位置でwindow.gif は最初に表示する基本になる画像です。img1 は特に意識しないでそのまま使えば良いと思います。
幅240高さ220の大きさの画像の中に名所の画像と名所の名前や説明文も一緒に入れてしまえば良いです。
下記の文を地図を表示した行の後ろの行に挿入しておきます。
<DIV style=”width : 240px;height : 220px;top : 800px;left : 670px;
  position : absolute;
  z-index : 1;
  visibility : visible;
” id=”Layer1″><span id=”img1″><img src=window.gif></span></DIV>
地図の上に基本になる画像が表示したと思います。
地図上のリンクの部分を
  <AREA href=”#” onmouseover=”img1.innerHTML='<img src=kyokusui.jpg>'” onmouseout=”img1.innerHTML='<img src=window.gif>'” shape=”rect” coords=”655,459,712,482″>
に変更すればOKです。
実際には兼六園の地図で利用したのですがサクサクとてきぱきと表示されるし,ポッポアップ禁止の設定にしてあっても表示できるし満足しています。
https://kimassi.net/kenrokumei/index.html
久しぶりに投稿にタグ(<や>入りのソースファイル)を挿入したらタグが文字扱いにならなくて当惑したのですが,HTML扱いでなくビジュアルモードで投稿すれば良かったのでした。なんでもすぐに忘れてしまって困ります。

MovableType 3.3でコメントが迷惑扱いされていた

「石川の食 美味しいもの食べたい」「福井の食 美味しいもの食べたい」「おじさんのダイエット作戦」「ライオンドワーフ(うさぎ)の飼育記」「交通事故の賠償請求」「金沢のお葬式情報 父親の葬儀」はMovableType 3.3を使っているのですが,10月より調子が悪くて,コメントを勝手に迷惑コメントに割り振られていました。自分のコメントも迷惑コメントになってしまう状態でした。ついさっき気づいて設定を変更しました。

せっかくコメントしていただいたのに,すぐに返事できなくてがっかりしました。

ホームページビルダーも進化している

ホームページの製作は,ホームページビルダーをメインに使っているのですが,7年間バージョンアップもせずに使っていて,今回バージョンアップしてみました。
以前のバージョンでは複雑な大きなテーブルを利用したページのソースファイルを表示するのに,耐えられないくらいの時間がかかり,その時は別のソフトを使っていたのですが,今回バージョンアップしてみたら,それほど待たずにソースファイルの表示ができるように改良されていました。
快適です。やっぱりソフトもたまにはバージョンアップしないといけませんね。

WordPress 3にバージョンアップしたら最近のコメントが表示しない

きまっし金沢の雑記帖に最近のコメントが表示されなくなっていることに気づいて,いろいろ調べたら,WordPress 3にバージョンアップするとプラグインCommented entry listが正常に動作しなくなるようです。
wp-content/plugins/commented-entry-list_1.2のcommented-entry-list.phpのソースファイルを少し変更することによって解決しました。

http://www.hide10.com/archives/13832

画像入りのテーブルに空白が入ってしまう

京都の紅葉一覧のページを製作していたら,画像を入れてあるセルの右側に空白が出来るトラブルが起きてしまいました。
Googleなどでテーブルのセルとセルの間の隙間を無くしたいと言う内容で,調べたりして
cellpadding=0とcellspacing=0を設定したり,テーブルの幅を設定(例えばwidth=”0″)したりしても全く解決せず困っていました。

同じフォーマットを使っている他のページには,そのようなトラブルがなく,滋賀県の観光地のページも従来は問題なく,新たな情報を追加したらセルの右側に空白が出るようになったので,滋賀県の観光地のページの新たに追加した部分を1つずつ削除して,どの部分を削除したら正常に表示するか調べて見ました。

そしたら画像の無い行の部分を削除すると正常に表示しました。

対象のテーブルは基本的には2列のテーブルで大きなタイトル(地域名)の部分が列の統合で1列,その大きなタイトルについての説明部分(地域についての説明部分)も1列,個別のタイトル(名所名)も1列,画像のある行は2列で左側が画像(名所の画像),右側が個別の説明(名所の説明)になっています。

大きなタイトルについての説明部分(地域についての説明部分)の説明文が改行無しに長文になっていると画像を入れてあるセルの右側に空白が出るようです。説明文が2行や3行程度だと改行無しでも問題ないようですが,それより長い長文を改行無しに入れるとダメなので,2行から3行に1回は改行すると良いようです。

こういう例は多いと思うのですが,インターネットでは何の情報も得られませんでした。