Google Maps のドキュメントが刷新
http://www.google.com/apis/maps/documentation/index.html
機能も見た目も大幅に変更されています。これまで1ページでまとまっていたのが、タブで分けられたデザインになりました。印刷するのが面倒です。。
どうやら今回の目玉は、Google AJAX API loader との連携らしい。
これまでだと、シンプルに地図を表示するには、
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"/> <title>Google Maps JavaScript API Example</title> <script src="http://maps.google.com/maps?file=api&v=2&key=ABCDEFG" type="text/javascript"></script> <script type="text/javascript"> //<![CDATA[ function load() { if (GBrowserIsCompatible()) { var map = new GMap2(document.getElementById("map")); map.addControl(new GOverviewMapControl()); map.addControl(new GLargeMapControl()); map.addControl(new GMapTypeControl()); map.setCenter(new GLatLng(35.658273,139.745107), 17); } } //]]> </script> </head> <body onload="load()" onunload="GUnload()"> <div id="map" style="width: 500px; height: 300px"></div> </body> </html>
対して、Google AJAX API loader を使うと、
<script type="text/javascript" src="http://www.google.com/jsapi?key=ABCDEFG"></script> <script type="text/javascript"> google.load("maps", "2.x"); // Call this function when the page has been loaded function initialize() { var map = new google.maps.Map2(document.getElementById("map")); map.setCenter(new google.maps.LatLng(37.4419, -122.1419), 13); } google.setOnLoadCallback(initialize); </script>
むむ?AJAX APIというものがMapsのAPIも包含している?それで
google.load("maps", "2.x");
という呼び出し方ができる?
結構大幅な変更ですね。もちろん従来のやり方でも動くんでしょうけど。最近、自分のブログなどにMapsを簡単に埋め込める機能、など実装されたので、それらに関係しているのかな。
いずれにせよ、勉強し直し。見向きもしていなかったGoogle AJAX API loaderも目を通すこと。