KsGMap は引越ししました

KsGMap KsGMap は Ver 1.00 正式版公開に伴い、リニューアルしました。

新しいURLは http://www.ksgmap.jp です。

汎用 Google Maps API スクリプト“ KsGMap ”とは

Google Maps API を用いた汎用スクリプトです。

Google Maps API は誰でも簡単に設置することができますが、いろいろな機能を付けると、どうしても敷居の高いものになってしまいます。そこで、さらに簡単に設置できるようにしたのが、このスクリプトです。
JavaScriptをあまり知らない方でも、簡単に設置することができます。

ただ今のバージョンは 1.00 (2005年9月29日アップ)です。 最新版が 映画館マップβ にて動いています。

はてなダイヤリーで、汎用 Google Maps API 開発日記 もやっています。

β版の改変履歴

汎用Google Maps APIスクリプトではなく、映画館マップβの改変履歴も含まれています。

β1 2005/07/19

・とりあえず公開。思ったより簡単。数時間で完成。でも座標を調べてデータを入れるのに丸一日(^^;。

β2 2005/07/20

・地域をセレクトボックスにして、選択後に劇場名が表示、クリックで移動、という風にした(やっとまともになったかな)
・データ構造を一新した(汎用性をアップ)。エリア情報も入れられるようにした
・マップ上でマウスホイールを回すと地図もズームする機能を追加
・デバッグモードの導入(といっても、画面上に座標を表示するくらいしかない)

β3 2005/07/21

・onload で処理することで、ページを表示する時間を短縮した(完了までのは変わっていないが、中身は表示される)
・マップが表示されるまで、マップの場所に「読み込み中...」と表示するようにした
・同じ座標の映画館でも、複数のデータに分けて、新たに設けたエイリアス関数で情報ウィンドウは同時に表示するようにした

β4 2005/07/22

・情報ウィンドウに、住所と電話番号とリンクを加えた。ようやく、まともになった気がする
・Googleローカルへのフォームを設置。関連キーワードは思いついたものを設置。ロギングとかして調査する必要あり

β5 2005/07/23

・レンダリング速度を改善。

β6 2005/07/25

・マーカーにA B C… を動的に付加 (同一マーカーは同じアルファベットにしてある)
・あらかじめ指定された数をオーバーすると一つ目(・)になる(7/26説明追加)

β7 2005/07/26

・ソースの中の変数名を見直し(Google Maps API関連は gmap_を付けた)
・初期エリアを簡単に設定できるようにした(gmap_default_area変数)
・また、URLの引数で area=[area_id] で初期エリアを変更することができるようにした。例:渋谷
・データの記載方法をソースに入れた(そのうちこっちにも転載します)

β8 2005/07/27

・Firefox でマウスホイールでズームできるようにした(使っている人がいるか知らないけど)。参考サイト(JavaScriptですごいことしてるサイト)
・右側のナビから情報ウィンドウを開いた場合、移動していたのを止めた(但し情報ウィンドウが画面外の場合は移動する)
・ソースの設定できるいくつかの値を変数として外に出した。
・URLを変更しました。

β9 2005/07/28

・表示する映画館を東京23区内から、東京都内に増やした。
・いろいろ調べるとXMLからデータを取り込むことがブームなようなので、XMLファイルからデータを読み込むことに対応した。既存のデータと共存も可能。theatermap.xml
・デバッグモードで、IEでも完全終了ではないけど、Googleマップ 表示開始?までの速度を表示することにした。

β10 2005/07/29

・スクリプト配布に向けて準備中
・“地域”から、より汎用性の高い“カテゴリ”と変更。広範囲だけでなく、地域内に複数の種類のデータの配置が可能になった。
・指定した地域内でしかマーカーを表示しない制限モードを作った(これで表示速度を改善)
・ほとんどの設定変数を省略(未定義)可能にした。
・情報ウィンドウ表示に関するカスタマイズを簡易化した(mapIten_makeHTML関数内の一部分だけ編集すればOK)

β11 2005/07/30

本格的にスクリプト配布用のプロジェクトに移行
・“データ”という表記が抽象すぎた為、それらを“アイテム”に変更。それに伴い変数名等も変更した。
・たまに(初読み込み時?)にXMLファイルが読み込まれない問題を解決
・カテゴリナビやデータナビなどのHTML上のIDを指定可能にした。省略時はナビゲーションを非表示にするようにした。
・尺度(左下の100mとか表示するやつ)を追加した。参考サイト
・設定で簡単に各種コントローラーを表示/非表示を変更できるようにした

β12 2005/07/31

・JavaScript形データの変数名を1つ変更 gmap_data_argName → gmap_data_itemArgName
・制限モードを廃止。常に制限モードとすることにした(コードをシンプルにするため)
・自動センタリング機能を追加。カテゴリ変更時に自動計算してセンタリング。また、すべてが収まるサイズに自動ズームも可能。

β13 2005/08/01

・今後の機能化に備えスクリプトを大幅に変更。JavaScript形のデータ形式が大幅に変更になりました。すみません。
・window.onload = googleMaps; が window.onload = mapInit; に変更になりました。こちらはXML形式も同様です。
・初期アイテム(gmap_default_item)を設けた。指定したアイテムの対象ウィンドウを開いた状態で表示するようになる。
・URLの引数で item=【アイテムID】 で初期アイテムを指定できるようにした。例:ル・シネマ
・初期経度/経度と初期カテゴリの座標が混在している場合、変な動きになったのを修正。(初期経度/経度を優先した)
・カテゴリを選択後に、フォーカスをマップに移すことにした(マウスホイールの誤動作を防ぐため)

β14 2005/08/02

・アイテム名の検索機能を追加した(ページのリロードなしで行える)。将来的にアイテム名以外でも行いたい。
・デバッグモードで、XMLファイルのキャッシュを読み込まないように工夫を加えた。
・URLの引数で lng=【経度】&lat=【緯度】 で初期座標を指定できるようにした。日本橋
・設定値の初期カテゴリを省略可能にした(省略時はマーキングしない)
・設定値で初期タイプにサテライトを指定できるようにした

β15 2005/08/03

・URLの引数で zoom=【尺度】 で初期尺度を指定できるようにした。値は0(詳細)~17(広域)。
・マップ情報を新設。とりあえず「このページのURL」を表示。将来的に関連したブックマーク登録やメール送信など搭載予定。
・画面中央に+を付ける設定を加えた(初期値オフ)。+画像は素材置き場(新設)より。将来的にサイズ変更もできるようにする予定。
・デバッグモードの座標表示に、XMLデータ形式のコピー&ペースト用の表示も新たに加えた。
・【仕様変更】検索関連の設定変数名が変更になりました。
・【仕様変更】CSSのクラス名を変更しました。

β16 2005/08/04

・ソート機能を追加。特定のキーで並び変え。現在は初期値でのみの指定だが、近く検索のように指定できるようにする予定。
  (映画館マップでは、座席数を降順にソートしている。ちなみに振り仮名データも入れればアイテム名順も可能)
・マップ情報に60進法の経度/緯度表示を取り付けた(けど、あまり使われないような気もする)。
・初心者向けのカスタマイズ用の関数を新たに定義し、本体から切り離した(映画館マップのuser_mapItem_makeHTML関数)。
・SafariでXMLデータが文字化けするのを修正。詳しくはメモの方もご覧下さい。
・コードが増えてきたので、ほとんどの名無しの関数に名前を付けた(コメントはまだちょっと直ってない)。
・【仕様変更】データやカテゴリのIDに _ が使えなくなりました。使えるのは A~Z、a~z、0~9 -(ハイフン)のみです。

β17 2005/08/05

・マップのタイプ「マップ」「サテライト」「デュアル」から「デュアル」を消した。方法はメモに表記。
・β16の予告通りソートを選べるようにした。映画館マップβの例は無理感ばりばりですが、近く良いサンプルを用意します。
・Firefox で初期値と違うカテゴリで検索をすると、初期値のカテゴリに移動してしまうバグを修正
・【仕様変更】マーカーファイルの設定値で大幅な仕様変更がありました。サイズ等、設定できる事が大幅に増えました。
・【仕様変更】検索のフォームの onclick 部分を変更。ただし、まだ動作に影響はないので、暇なときに変更して下さい。

β18 2005/08/06

・特殊ソートとして「現在地から近い順」を追加。クリックした時点で現在地(+マーク)からの順序を表示
・Googleローカルへ渡す位置の引数を、従来はカテゴリ名だったのを現在地の座標に変えた。同一地域名がある場合などの誤作動を解消。

β19 2005/08/07

・中央に表示される「+」マーカーを、可変長(%指定)のマップにも対応させた。
・“現在地を他の地図で開く”第一弾として、Googleマップ を追加。
・このページのURLをメールで送信する機能を追加。単純にメーラーを起動する方法。
・このページのURLが変になってしまっていたのを修正。
・【仕様変更】検索やソートの onclick などの中の関数名を変更しました。

β20 2005/08/08

名称を汎用Google Maps APIスクリプト “ KsGMap ” に変更。
・【仕様変更】名称変更に伴い、変数名と関数名が変わりました。設定変数名の先頭に ks を、関数は検索やソートの mapFunc~ を KsGMapFunc~ に変更して下さい。
・【仕様変更】エイリアス設定を廃止。自動的にエイリアス設定をするようになった。
・自動エイリアス機能で、マップの尺度によって近いアイテムをまとめて表示。マーカーが重なるのを解消。
・同機能で、ソートの時のアイテムナビの並び順が不明確、検索時に不必要な情報まで情報ウィンドウに表示、を解消。
・ソートの時に型の判別に失敗して、数値も文字列としてソートしていたのを修正。
・【仕様変更】「このページのURLをメールで送信」の関数名を間違えていたので修正。

β21 2005/08/10

・情報ウィンドウが大きい場合はスクロールバーを表示するように本格実装。
・Netscape でもマウスホイールによるズーム変更に対応。
・“現在地を他の地図で開く”第二弾として、Yahoo!地図情報 を追加。
・引数でアイテムを指定しても、Internet Explorer以外で反応しなかったのを修正。
・引数でアイテム指定の場合、初期座標の中心をアイテムにするようにした。
・【仕様変更】Googleマップへのリンクの関数名を変更しました。

β22 2005/08/12

・絞り込み検索を追加。さまざまな条件で検索をすることが可能になった。
・検索で1件も見つからない時にメッセージが表示されずエラーになってしまうのを修正。
・【仕様変更】検索の設定変数と関数名が若干変更になりました。

β23 2005/08/19

・“現在地を他の地図で開く”にgoo地図を追加。gooは路線も調べられるので、そっちにもリンク。
・非インターネット環境や、非対応ブラウザで、マップが表示されない場合のメッセージを追加。
・【仕様変更】上記に伴い、HTMLのマップの表示されるdiv内を変更。及びjsファイル読み込みの順序を変更(KsGMapが上)。
・ズームと移動ボタンの表示の設定で、3(+と-のみ)を設定しても移動用矢印が表示してしまっていたのを修正。

β24 2005/08/20

・ユーザーがマーカーとセンターマーカーの表示/非表示を切り替えられるようにした。
・アイテム名検索で、キーワードの空白区切りをAND条件で検索するようにした。
・Safariにマウスホイールの拡大/縮小機能を加えた。
・【仕様変更】マーカーアイコンを指定する関数名(KsGMapDataIcon)を変更しました。

β25 2005/08/22

・ソートで「現在地からの距離順」をプルダウンに収納するようにした。
・現在地からの距離順ソートは常に移動後も自動的に行うようにした。
・【仕様変更】上記のソート関連に伴い、ソートの部分のHTMLが変更になりました。
・マップ情報のこのページのURLにリンク型を新設。
・このページのURLで引数が座標タイプの場合、選択カテゴリの値も送るようにした。
・情報ウィンドウが開いている場合、マウスホイールのズームをしないようにした。
・“現在地を他の地図で開く”で「Yahoo!地図の路線情報」と「はてなマップ」を追加。
・“現在地を他の地図で開く”で他の KsGMap にリンクできるようにした。
・“現在地を他の地図で開く”にプルダウン型のナビゲーションを追加。

β26 2005/08/23

・自動エイリアス(広域で近くのマーカーをくっつける機能)を調整して精度をアップした。
・URLの引数に初期タイプ(type=~)を指定できるようにした。
・初期値のタイプにデュアル(ハイブリッド)を追加
・【仕様変更】設定変数の初期値のタイプの記述方法を変更。
・アイテムナビゲーションをシフトキーを押しながらクリックで、該当アイテムにセンタリングする機能を追加。
・キーボード操作の一部に対応(IEのみ)。

β27 2005/08/24

・複数のマーカーを扱えるようにした。
・各種制限を加える設定を追加した。ユーザー操作やズームの範囲、URL引数の無効など。
・引数に座標のみでカテゴリ未指定の場合、最も近いカテゴリを選択するようにした。
・Alt+アルファベットキーを押すことで、その文字の情報ウィンドウを開くようにした。
・IEの場合、Tabキーでアイテムを選択できるようにした(アクセシビリティ向上の為)。
・IE以外で、アイテムナビのマウスカーソルがIビームだったのを、ポインターに直した。
・ハイブリッドの無い地図はハイブリッドに指定できないようにした。エラーになる為。

β28 2005/08/26

・ソートの値をアイテムナビの右側に表示する設定を追加。
・制限に座標を加え、制限座標内しか移動できない(移動した場合戻る)ようにした。
・マーカーと現在地の表示切り換えをチェックボックスでもできるようにした。
・現在地からの距離順ソート時に、情報ウィンドウを開くと、変な処理になるのを修正。
・まれにマップ情報の緯度と経度の値が表示されなくなるバグを修正。
・複合用マーカーが定義されている場合、同じマーカーでも重なると複合用マーカーになるのを修正。
・デバッグモードで、データ収集用の座標表示がされなくなっていたのを修正。

β29 2005/08/28

・カテゴリに「すべて表示」を加えた。すべてのカテゴリ内のアイテムが表示される。
・検索をクリアしても、「○件のアイテムが見つかりました。」と表示されるのを修正。
・現在地からの距離順ソート中に、カテゴリを変更すると、直ぐに反映されなバグを修正。
・Safariでラジオボックスが選べなかったのを修正(ラジオボックスを<form>で囲む)。
・Safariでソートの値が表示される際に悲惨にバグったのを修正。

β30 2005/08/29

・マップ内に情報バーというのを新設し、一時的なメッセージが表示するようにした。
・前バージョン搭載の「すべて表示」を表示しない設定を加えた。
・キーボード操作を追加。アクセシビリティを向上させた。
・カテゴリナビの「すべて表示」のCSS(背景色など)を変更できる仕組みを搭載。
・キーボード操作でカーソルキーを押しっぱなしにすると変な動作になってしまうのを修正。
・“自動エイリアス”という名称を“Zマーキング”に変更。

β31 2005/08/31

・今までズーム毎にマーキングしていたのを変更した場合のみとし、速度を向上させた。
・“しならくお待ち下さい”の表示条件をアイテム数20からマーカー数20にした。
・マップ情報の60進数の座標表示で、秒と秒以下の値が同じになっていたのを修正。
・カテゴリ移動後にマーカーを含める用にズームする機能の一部バグを修正。
・URL引数でアクセスすると「このページのURL」にその値が入らないバグを修正。

β32 2005/09/03

・検索に類義語辞書機能を追加。
・検索でカテゴリ内が0件の場合、カテゴリナビを「(カテゴリ名)を選択して下さい」に変更。
・検索でカテゴリ内が0件の場合、アイテムナビに「すべてマップに表示」するリンクを追加。
・検索結果のCSSのクラス名が間違っていたのを修正。
・Firefoxで情報バーが消えるときにゴミが残るのを修正。
・XMLファイル内の要素部分にHTMLが情報ウィンドウに表示されないバグを修正。
・【仕様変更】XMLファイルのフォーマットを変更しました(下位互換)。

β33 2005/09/07

・画面や検索、ソートはそのままでデータのみ他のXMLファイルに変更する機能を追加。
・可変長(%指定)マップでも正しく表示することができるようにした。
・アイテムナビで、横のスクロールバーを表示しないようにした(Safari以外)。
・スクリプトを全体的に汎用化する前の変な部分などを変更した。

β34 2005/09/10

・カテゴリにグループを設けられるようにした。表示は optgroup 。
・引数にXMLファイルを指定できるようにした。併せて「このページのURL」にも同値を表示するようにした。
・「このページのURL」でXMLファイルとタイプ、ズームが初期値と同じ場合はその部分を表示しないようにした。
・設定値でXMLファイルのパスを指定できるようにした。
・window.onload = KsGMapInit; というのを省略できるようにした(あっても大丈夫)。
・【仕様変更】自動エイリアスからZマーキングの名称変更に伴い、設定値 ksgmap_alias_separate を変更。

β35 2005/09/13 最終β版(予定)

・テンプレート変換機能を実装。XMLファイルに記述するだけで自動的にデータを挿入しHTMLを生成。
・リキッドデザインで、ナビゲーション部分を%でなくピクセルで固定でき、残りをマップにする設定を追加。
・検索で何も無かった場合に表示していた「マップ上にすべて表示」を常に利用できるようにした。
・前項に伴い、検索で何も無かった場合の「すべてマップに表示」を「マップ上にすべて表示」に変更。
・キーボードの矢印キーのウェイト時間を短くして動きをスムーズにした。
・アイテムナビで、Shiftキーを押しながらアルファベットを何度かクリックするとエラーになるのを修正。
・XML読み込みの時間が長くなると「読み込み中...」メッセージが表示されにくかったのを修正。
・【仕様変更】KsGMap以外の他のマップへのリンクの関数名を変更しました。
・【仕様変更】前項以外のKsGMapFuncから始まる関数名を変更しました(下位互換)。
・【仕様変更】マーカーや現在地の変更の関数名を変更しました。

Ver1.00 RC1 2005/09/19

・Powerd By KsGMap を10秒間だけ表示するようにした。表示させないことも可能。
・移動完了(移動停止0.75秒後)イベントを設け、現在地からの距離順など時間がかかる処理をこっちで行うようにした。
・情報ウィンドウとアイテムナビでスクロールバーが表示されていたのを、はみ出さない限り非表示にした。
・情報ウィンドウを開いたときに、ページ自体に横スクロールバーが表示されてしまっていたのを修正。
・Safariで情報ウィンドウの中身が変に改行されていたのを修正。
・カテゴリ名をアイテム名を設定しても一部を除き反映されなかったのを修正。
・前バージョンで搭載したマップ上にすべて表示で、IE以外で動作が変になるのを修正(HTMLも含む)。
・データ形式でXMLではなくJavaScriptの場合、このページのURLにゴミが付いていたのを修正。

Ver1.00正式版 2005/09/29

・情報バーとPowerd By KsGMapの位置がたまに変なとこに飛び出すのを修正した。
・マップ ナビナビゲーションの設定値の変数名を変更。
・マップ ナビナビゲーションとマップ・リンク(他のマップで開く)を別ファイル化(プラグイン)した。
・デバッグのHTMLの中身を省略可能に変更(下位互換)。


バージョンアップの詳しい内容は、汎用 Google Maps API 開発日記 で紹介しています。