Monday, July 30, 2007

Use Google Map Geocoder without API key

前一篇提到,用偷吃步的方法是不能用 Google Map Geocoder 的功能的,但山不轉路轉,路不轉人轉,不到最後關頭,絕不輕言放棄。在找到方法之前事實上我己經和 Google Map API 纏鬥很多種方法了,一直想找到方法可以不需要 Server 的支援,用完全 client 端的方法來呼叫搞定所有的步驟,一開始我試圖從 api 尋找是不是有繞過驗證的方式,但呼叫 geocode 的驗證是在 google 的 server 端,所以躲不掉,再來我想即時去申請 API Key 然後再進行呼叫,但這種跨 domain 的動作是限制重重的,不能用 XMLHttpRequest, 也不能用 IFRAME call,而用 on-demand javascript 又因為申請 API Key 的回傳不能 parse 而失敗。到此其實就可以宣判純 client 的解法行不通了。

先說明一下什麼是 Geocoder 好了,Geocoder 簡單的說,就是可以用地址來在地圖上定位(查出經緯度),另一個方向是由經緯度找出所在的地址。也不只是精確的地址,概略性的地名也可以進行查詢。之前 Google Map 開放查台灣地址的功能,也就是台灣 Geocode 的資料已經建立在 Google 裡了。像這種資料一般人是不太可能建立的,像 Google 這種有能力的大公司已經建立了很龐大,功能很強的 Geocode 功能,而且基本上己開放出來,當然各式各樣的 AP 如果能 mashup 這個功能當然就如虎添翼了。(所以因為 API Key 的因素而看得到吃不到就更恨了…)

既然宣告純 client 端做不到,那就要找一個 Server 了,但我還是想至少要找個不用花錢的解法,這時靈光一現,Yahoo Pipes 說不定就可以做得到?之前沒有真正研究過 Yahoo Pipes 怎麼玩,現在正好有個機會試試看,經過一陣玩弄,果然可以搞出一個 geocoder pipe。原理就是由 Yahoo Pipes 做為 Proxy 對 Google Map 呼叫 Geocode,而只需申請 Yahoo Pipes 的 API Key 就可以了。

所以標題是不太對的,應該是說建立一個公開的 Google Maps Geocoder Proxy 才對。這麼做有個缺點是,Google Map Geocode query 每天是有次數限制的,所以是有用到這個 proxy 的人去共用這個次數。不過每天 50000 應該是還好啦,現在應該也只有我的 Flickr GMap Show 會來用,還不用擔心。一樣來個範例程式:http://www.wctang.info/maptest3.html

至此,我的 Flickr GMap Show 的功能大致就完整了,找個時間來整理一下所遇到的問題和想法吧。

Thursday, July 26, 2007

Chyna

不知道有沒有人記得這個樂團,也不知道我為什麼會一直記得這個樂團,算起來是國中高中的事吧。應該是我買了他們唯一的一塊“卡帶”吧,只記得我應該是一直聽一直聽,後來好像卡帶壞了,我又不知道和哪個同學又“複製”了一塊,不過後來都不見了,現在就算有也找不到機器來聽了。

我本來對音樂就沒什麼太多喜好,我聽相聲的時間可能比聽流行歌的時間還多。不過音樂奇妙的地方就是可以營造出回憶的場合,我喜歡聽人說話,但說話就沒有這種感覺。

KKBOX 在這時候就有它的好處了,這麼久的專輯也有,還可以試聽,也難怪他成功打敗別的線上音樂站(可以買他的股票嗎?)。雖然 Chyna 是一張樂團,雖然聽起來還是蠻芭樂的,聽起來還不錯我也說不出有什麼特別的,雖然我也不曾認真去喜歡或了解這個團(應該也來不及了吧),雖然己經是這麼久以前的事了,不過聽音樂本來就是很個人的事,這或許就是所謂的長尾效應吧 :)

Reference:
KKBOX - CHYNA合唱團 答案
◆◇音樂潘朵菈◇◆ - Chyna
在縱貫線的旅途上/CHYNA搖滾合唱團
1992-CHYNA-等待千年的相遇

Wednesday, July 25, 2007

Use Google Map API without API key

自從 Google Map 出現台灣的街道圖後,UrMap、Live Map 和 Yahoo! Map 就沒人提了,還有人在開發 Google Map 以外的 地圖程式嗎?Google Map API 的用法,看 Google Maps API 本身的 Tutorial 就是王道,網路上也很多教程,就不用在這裡多說了,這裡集中談有關 Google Map API key 的問題。

先說正常情況下,不需要 API key 就可以使用 Google Map API 的條件(不需要 API key 的意思是你不提供 key 或 key 亂寫都沒關係)。首先就是在 Google 自已的網頁當然不用 Key 就可以用,還有像是在 googlepages, iGoogle (如 Gadget 開發), orkut 上使用 Google Map API 也都不用 API key。再來,如果單純只是要在本機上試用 Google Map API 並不需要去申請 API Key,像是你用檔案的方式去開起來看、或是自己架 web server 連到 localhost 測試也不用 key 就可以使用。

一般如果是在靜態頁面上使用 Google Map API,申請 API key 並不是什麼麻煩的事,但像是 blog 之類的網頁,除非只出現在首頁側邊欄,不然如果是放在文中,因為 GMap API key 是根據你的網址(包括目錄)來申請,一般 blog 系統都會有多種不同的方式連到同一個內容,而會造成網址不同而無法使用。再來就是一些為網站加上內容的工具,例如想在相簿網站中依相片位置來顯示地圖,因為一般相簿網站不太可能把相片放於同一層網址中,所以在 key 的申請上也會造成困難。對於這個問題的解決一種是使用 iframe 內嵌另一個正確的網頁進來,基本上這的確可以解決不同網址的問題,但內嵌 iframe 就比較難和外層的網頁互動,如果只是單純顯示地圖就還沒問題,如果要有更具互動的操作就困難了。當然會去研究解法也是因為 Flickr Gmap Show 要在 flickr 上顯示 Google Map 的關係。

Google Map 本來就是幾乎都是 client 端 JavaScript 的程式,Server 端主要就是提供地圖的圖片資料,所以連驗證 API key 的動作其實也是在 client 端進行的,當然我們就有機會可以略過驗證的步驟了。GMap API 是使用下面的方式載入所需要的 JavaScript 程式:
<script type="text/javascript" src="http://maps.google.com/maps?file=api&v=2.x&key=abcdefg">
</script>
既然是 JavaScript,我們當然可以老實不客氣的仔細看看到底是怎麼做的。這段程式 (以下稱 maps.js) 只是用以載入完整 Google Map 程式 (以下稱 main.js) 的 loader,還有和地區及文字相關的變數定義。因為 Google 會根據使用者所用的語言及提供的 api key 不同,而回傳不同的 JavaScript 程式,以保持主要程式 main.js 的部分不需改變,所以 Google 用這種兩段式的載入方式。我們要找的驗證的程式叫 GValidateKey,是定義在 main.js,但呼叫的動作是寫在 maps.js 裡:
if (!GValidateKey("23b24975f9882203f0465f6c91adfee1b55adb98")) {
 G_INCOMPAT = true;
 alert("此網站上使用的 Google 地圖 API 機碼已由另一個網站註冊。....");
 return;
}
GValidateKey 傳入的數字是由我們提供的 API key 所對應的網址所算出的 hash 值,而這個函式的驗證就是根據我們實際連線的網址計算一次 hash 再和這個值做比對。而這段程式被呼叫的流程是 maps.js 載入後,呼叫 GLoadMapsScriptGLoadMapsScript 會載入 main.js ,而 main.js 載入後會呼叫 maps.js 裡的 GLoad,而 GLoad 就會呼叫 GValidateKey 進行驗證。所以想要略過驗證的動作,就是要想辦法改掉這段驗證的程式。最簡單的改法,就是改出一份跳過不做 GValidateKey 的 maps.js,然後就可以爽爽的用了。修改過後的 maps.js 可以參考 http://www.wctang.info/maps.js,唯一做的修改就是不去呼叫 GValidateKey 。使用範例可以參考 http://www.wctang.info/maptest.html

基本上,上面的做法已經可以達到我們想要的效果,就是在不論哪個網頁都可以使用 Google Map API。但這個做法有個缺點,因為地區及文字訊息都集中記錄在 maps.js,原本 Google 會根據 browser 所設定的語系而回傳適當語系的 maps.js,所以同一分 Google Map 程式我們看是中文訊息,外國人看就是英文訊息,而因為我們是用自己修改的 maps.js,所以除非我們能架起一個 Server 也可以回傳多種語系、修改過後的 maps.js,不然就會失去這多語系的功能。而且 Google Map 不時也會進行更新,用自己修改的 maps.js 也會讓 Google Map 的更新無法反應出來。要解決這個問題,一個就是也架個能即時修改並回傳正確修改後 maps.js 的 server ,另一個還是在 client 端下手,先從 google 端 load 正確的 maps.js,再動態去修改呼叫 GValidateKey 的部份。第二個作法就是要想辦法改變上述的流程,一樣先載入 maps.js,呼叫 GLoadMapsScript,而在 GLoadMapsScript 載入 main.js 之前,先去修改 GLoad 呼叫 GValidateKey 的程式,而後再去載入 main.js,而之後的流程就沒問題了。修改的方法就是在載入 google maps.js 前定義下面這段程式:
<script type="text/javascript">
document.oldwrite = document.write;
document.write = function(str) {
  if(document.oldwrite && window.GLoad && (typeof window.GLoad == 'function')) {
    eval('var gloadstr=window.GLoad.toString(); gloadstr=gloadstr.replace(/\\n/,""); gloadstr=gloadstr.replace(/^\\s*function\\s*GLoad\\s*\\(\\)\\s*{/,""); gloadstr=gloadstr.replace(/}\\s*$/,""); gloadstr=gloadstr.replace(/GValidateKey\\("\w*"\\)/,"true"); window.GLoad=new Function(gloadstr);');
    document.write=document.oldwrite;
  }
  document.oldwrite(str);
};
</script>
範例程式可以參考 http://www.wctang.info/maptest2.html

以上的改法都有一個限制,就是不能使用 Geocoder 的功能,原因是因為使用 Geocoder 就是要連到 Google 去做查詢,而現在 Google 在做 Geocode 查詢時會在 Server 端做 API key 的檢查,這個就躲不掉了,我這種偷吃步在查詢時都會被打回票的。

呃,不知道這樣搞有沒有違反什麼使用條款,Google 目前對 Google Map 基本的使用是沒有呼叫次數的限制,而 Geocode 查詢是每天有 50000 次的限制,說不定哪天 Google 放寬這個限制後,就可以不用 API key 去查 Geocode 了...。

Update: 有關上述 Geocode 的問題請參考: Use Google Map Geocoder without API key

Monday, July 23, 2007

柯南-紺碧之棺

都已經第11集了,感覺招式都用老了...

好像是每年都例行的事似的,不管發生什麼事還是要去看一下的。我一直覺得很奇怪,為什麼父母要帶這麼小的小孩來看這種只有日文版又可能一堆死人的電影呢?應該去等一陣子看料理鼠王吧。

每年都來一部我是覺得不錯啦,不管好不好看都還有一定水準以上,不過柯南電影版已經變得太有一套固定的模式了,一個我們永遠不可能猜出來的阿笠博士冷笑話猜謎,然後在片尾曲之後還有一段結尾也是都一樣的,今年沒看到任何人走哦,大家都很有默契。不過今年小五郎完全沒昏倒(應該說都沒人昏倒),從頭到尾只死一個(而且還是被鯊魚幹掉的),園子海報好像很強實際並沒有,然後結尾越來越扯,柯南越來越不掩飾他的神勇,不過一點都不擔心柯南要揭穿,因為已經有第12集了(當然)...
conan
在片頭廣告有個應該是台灣做的動畫電影叫“媽祖”的預告,呃,該怎麼說呢,不管把海啊山啊之類的 3D 搞得再炫也沒用,人物不行就完全不行啦,大家早就被日本、迪士尼和夢工廠把胃口養大了,這種不知幾年前水準的人物實在很難讓人看好啊…

Saturday, July 14, 2007

Flickr GMap Show 支援 Panoramio

爭什麼爭,把兩樣摻在一起做瀨尿牛丸不就得了,笨蛋!

我在這篇提到 Panoramio,簡單的說是一個幸運被 Google 買下來,以地理資訊為中心思想的相簿網站。Google 和 Yahoo 都在收購一些和自己原本業務有重疊的服務,像 Google 的 web picasa 老實說也就只算是個放圖的地方,其他的功能都還十分陽春,好不容易前一陣子為 picasa 加上 Map 相關的功能,但看到 Panoramio 對 Google Map 和 Google Earth 的整合度,讓人不知道 Google 最後是要讓哪個活下來?雖然 Panoramio 對地理資訊的整合度很高,但除此之外的功能仍然是個很陽春的相簿網站,不過雖說如此,但感覺他的目標是和 flickr 比較相近的,而 picasa 就讓人覺得根本不是鼓勵人分享的網站。雖說 Panoramio 現階段和 flickr 還不足以相提並論,但他的在地理資訊上的整合有先天優勢 (對,光是 Google Map 比 Yahoo! Map 就是先天優勢),所以雖然在上面的照片量不算多,但具有標記地理資訊的比例就比 flickr 多了。

我說過有了 Google Map,其實做這種地理資訊相關應用的難度早就大幅降低了,真正困難的是和地理資訊相關的資料來源。現在除了 flickr 之外居然又多了一個寶貴的資料來源,又有 api 可以用,所以管他們兩個網站想怎麼爭,我們把兩樣摻在一起做瀨尿牛丸不就得了!所以囉,Flickr GMap Show 目前的版本除了從 flickr 抓取資料外,也會同時向 Panoramio 抓取資料。不過資料量加大,又是非同步的動作,老實說對速度和穩定度是有影響的,但新功能的誘惑實在太大了,該加的還是要加,不過有選項可以關掉這個功能。到現在這個程度,已經不算是 "Flickr" GMap Show 了,如果還有其他的資料來源再加入的話 (台灣美女地理雜誌? XD),就應該要改名了 :)

順道一提,Google 最近為 iGoogle 辦了一個 Google 小工具設計甄選 的活動,我把之前做的兩個 Gadget (Flickr GMap Show, 台灣衛星雲圖) 都放進去了,這裡可以看到目前加入的 Gadget (奇怪有很多重覆的…)。

程式寫完還要改文件,想到就懶…

Friday, July 13, 2007

免費體驗 Flickr Pro

不知道會持續到什麼時候,大家快上 :)

之前網路相簿界有個大消息就是 Yahoo! Photos 要關閉了,一般來說大家認為是 Yahoo! 要把所有相片的服務移到 flickr 上,但 Yahoo! 的做法不是直接就移轉過去了,而是允許使用者可以選擇轉換到數種不同的相簿平台上,光這點就把國內這些把使用者內容當資產的業者比下去了。

而 flickr 在這波移轉潮中,也大方給每個轉過來的人三個月的 Pro 帳號,要知道 flickr 的 Pro 可不是什麼有個金色銀色小花之類的差別而已,而是有無限上傳流量的 (原本容量就是無限的),所以大家大可以在這三個月內把所有的相片全傳上去 (不用縮圖的情況傳上去哦,flickr 會幫你保存原始圖檔),就算之後不續 Pro,每個月 100 mb 也一定夠平時使用了 (只是沒有 Pro 就不能下載原始圖檔版本,不過 flickr 還是會留著,只要以後再買 Pro 就可以再下載了)。還有比這個更好的備份方式嗎 :)

而原本沒用 Yahoo! Photo 的人怎麼賺這一筆呢?答案是"雅虎奇摩"還沒關掉他們的相簿申請哦…:) 詳細過程可以照這篇來做,連原本就有 Pro 的人也可以再加三個月哦。

Reference:
天上掉下來的 Flickr Pro Account
快賺 Flickr Pro 的三個月使用期限

Thursday, July 12, 2007

Google Map 正式推出 Mapplet

不知道有沒有人注意這件事,我倒是沒想到這麼快就上線了。

我是在測試我的 mapplet 時突然發現 mapplet 移到正式的功能了,然後 Google 官方就放出許多正式的消息了。基本上我覺得 Google Maps 變成地理資料平台 就是我在這篇中想要表達的,而我也這麼相信的。另外我的 Flickr Gmap Show 也進入 mapplet 的目錄中了:)

不過啊,看到 Google 的消息中都提到 Panoramio,我真是完全漏掉這個消息了。我看了一下這“又一個”相片網站,真的很特別,他完全是為了 Google Map 和 Google Earth 而存在的(不知道是不是被 Google 買下後才變成這樣的),除了地理資訊外的功能似乎都非常的陽春。又讓人有同樣的感概,為什麼 Flickr 不是被 Google 買下來呢?Yahoo Map 真的完全比不上 Google Map 啊,雖然我一直想要結合這兩個服務,但還是比不上有官方支援來得有力啊。也有人有相同的感概而放棄把有地理資訊的照片放到 Flickr 而轉放到 Panoramio,嗯,希望他能看看 Flickr Gmap Show 的 Greasemonkey 版本再做決定 :) Panoramio 也有出 mapplet 版本,程式真簡單啊 :)

Google Maps Mashups 2.0
Google Maps Becomes a Geographical Data Platform
Google 将于本周发布 Mapplet

Wednesday, July 11, 2007

台灣衛星雲圖 Gadget

好像要轉移注意似的,一直在搞有的沒的…

雖然有人說 iGoogle 注定失敗(注意哦底下的留言哦,啞虎對這篇很有興趣的 :)),不過開發 Gadget (就是 iGoogle 的插件)還是蠻好玩的。之前提到過 Gadget 和 Mapplet 幾乎是相同的東西,所以很自然的就會想來玩玩看 Gadget 怎麼玩了。Gadget 就很多人在開發,像是“今天我最美”這類的 Gadget 就很不錯 :)。

其實啊,這類的小玩意兒寫多了,程式技術上就知道沒什麼太困難的,最重要的還是資料的來源。真正要做一些能產生新資料的大概很難只用前端的 Javascript 做出來,雖然有像 Yahoo Pipes 之類的工具能充做資料的源頭,但基本上要有個 feed 的來源才算是比較可行的。不過現在在 Gadget 目錄有一堆就是直接用 blog 的 feed 做成的 Gadget,我覺得這就不必了吧,用 google reader 來看不是比較省事嗎?

當我在想能做什麼 Gadget 時,我第一個想到的是天氣資訊。基本上天氣資訊的 Gadget 也已經有了,但我想做的是衛星雲圖,資料來源當然就是中央氣象局了,其實就是推算圖片的網址抓出來就是了。 Add to Google

至於寫這幹嘛,沒啥用吧,就說我在轉移注意力嘛...

Monday, July 9, 2007

爆天量

不是在說股市...

當我看到這一篇時,我心想“呃,我前一陣子好像也有寫一篇耶,該不會我也被炸吧”,用 Google 一查,呃,真的還蠻前面的,用 Yahoo 查,嗯,蠻後面的,再上 Google Analytics 一看, ganalytics 是怎樣,我裝 Analytics 很久了耶,之前明明起起伏伏很好看的啊,為了這種無聊文來爆天量實在是蠻冏的…

這樣想想,是不是應該也來裝個 AdSense 呢?好像海底的生物似的,平常龜著不動過濾小小流量,說不定哪天又來個爆大量就可以飽餐一頓…想太多

Saturday, July 7, 2007

Flickr 自拍

我也來個標題殺人法好了...

自從上次弄出 Flickr Gmap Show - mapplet 後,就一直小修小改的,像是把選日期後設定中移出,直接放在頁面上可以方便選,會這麼改是原本以為是用固定日期然後在地圖上移來移去瀏覽照片,後來自己多用幾次以後覺得固定一個地方來瀏覽不同時間的照片比較有意思。再來就是可以設定排序方式,原本是固定依拍攝日期來排序的,但一般來說用日期排序對隨意瀏覽的方式並沒有太大意思,而 flickr 有提供一種以 interestingness 來排序的方式,雖然不確定這個 "有趣" 是怎麼定出來的,但確實排在前面的都是感覺拍得比較好的照片 (flickr 本身也有 Explore Interestingness 的頁面,而 flickrleech 更是讓你可以依時間來找有趣的照片),所以推薦使用 interestingness-desc 這種排序方式 (雖然預設還是依拍攝日期來排 @@)。還有就是加上搜尋條件,加上作者圖示 (buddyicon) 等小變動。

技術層面的變化,原本是用 xml 由 flickr 讀取資料,後來發現用 xml 一來資料量大,二來處理也比較不方便,再者 Google 處理 flickr 回傳的 xml 好像常常出問題,所以就改用 json 的方式回傳,穩定且快速多了。像這種要 mashup 兩處傳來的資料,因為需要和另一個網頁讀取資料,所以原本是不能用 Ajax 的方式做的,之前舊版本是用 dynamic load javascript 的方式來做動態呼叫。但 Google 的 gadget 提供了 _IG_FetchContent 和 _IG_FetchXmlContent,讓開發者可以用 ajax 以 Google 當 proxy 來取得遠端資料,這樣對開發者來說就十分方便的。以前 Microsoft 的成功就是提供給開發者方便好用的工具做開發,吸引了開發者就能吸引使用者,現在 Google 也在開發者這邊下了很多工夫,像是 Google code 也是方便放 code 的地方,你看,連 Google 都建議可以把程式放在 Google code 直接連了,以後就不用客氣了吧 :)

點選這裡就可以安裝使用了。看,台灣 Google 果然是有活力,連還沒正式上線的服務就到處都已經中文化了。

這些和標題到底有什麼關係呢?之前我有提到有個叫台灣美女地理雜誌的網站,我就想說如果我關鍵字下得對,我這個小工具也有潛力來弄個 flickr 版的台灣美女地理雜誌吧。我左想右想,不知道用什麼關鍵字才好,會用美女什麼的來當照片說明應該不多吧。後來我想“自拍”應該不錯,結果出來的都是類似這種的照片:
fgs mapplet 真想給他來個飛踢。flickr 果然不是個找美女圖的好地方。

(順便一提,最近我再看台灣美女地理雜誌就沒發現有明顯奇怪的定位問題了,不知是我錯怪他們還是有改進了?如果真的有方法可以抓到丁丁大站的美女圖庫加上地理資料的話,能開放出來就是功德無量啊 :) )

Friday, July 6, 2007

Flickr Gmap Show, Mapplet version

當我第一次看到 Mapplet 時就覺得這是展現 Flickr Gmap Show 最好的方式,使用起來就像是 iGoogle 新增插件一樣容易(事實上的確是相同的,只是一個是用在 iGoogle,一個是用在 GMap),而且介面上也以地圖為主,適合以地圖為主來瀏覽照片的方式。不過一來這個功能 Google 還在開發中,從一般的 GMap 網頁進去是看不到的,而有另外的入口,二來因為 mapplet 的目標是要做到可以讓多種不同地圖型的插件 "同時" 啟用在同一張地圖上,這個目標真是漂亮,想像一下 Google Map 上除了 Google 提供的功能外還可以有氣象,有地區美食,有照片 (就是我要做的),還有像是停車場資訊 (台北的哦) 什麼的,真是漂亮的一步。Y!Map, UrMap 還有什麼機會呢?

不過啊,目標很漂亮,做起來卻很複雜,要讓多種插件同時運作而不能讓插件彼此之間互相干擾,而且因為是在 Google 的本站執行,所以還要絕對避免 XSS 之類安全性的問題。可以研究一下 Mapplet 的說明文件,首先讓插件的 script 在 iframe 中執行,然後提出一個和普通版本很不一樣的 Google Map api,用了大量的非同步方式執行,也不允許在地圖上增加圖層,除了這些,也是因為安全性的問題,他不允許在 InfoWindow 中使用 javascript,也只只能使用有限的 html 功能。最後這一點讓 Flickr GMap Show 以前的運作方式 (在 InfoWindow 中瀏覽同一地區的照片) 完全行不通了,所以要改一個形式來呈現了。技術細節就不提了,雖然 api 變成這樣難用很多,一開始我也不懂為什麼要弄得這麼複雜,但後來仔細想過就覺得 Google 做得很不錯,如果其他的人想要做類似的事想必也是搞出類似的東西。這個功能如果正式推出應該會受到好評的 (不過我對趨勢的看法一向不太準啊@@)。

點選這個 Add to Google 就可以安裝了。 也可以新增其他的 mapplet 同時啟用,在這裡有很多目前已開發出的 mapplet,像是類似功能的 Flickr Photo Mapplet 也可以試試看。

FGS Mapplet

基本上在右邊地圖上不能搞的事就只好移到左邊的 iframe 中執行,原本是在 InfoWindow 中去瀏覽同一地區的照片,因為要用到 javascript 所以就移到左邊,而在 InfoWindow 中就隨機抓一張出來顯示。而因為多了很多非同步函式的呼叫,所以感覺會比較卡卡的,也因為查詢和運算時不能把地圖遮起來 (不能新增圖層),所以只把左邊的遮起來意思一下。而目前也可以在左邊欄上的"編輯設定"中設定年月和搜尋的標籤。
fgs mapplet
感想就是,要讓 Javascript 可以同時跑在 Firefox 和 IE 真是要花不少工夫和不少經驗啊,難怪 Javascript 這麼少人精通的,我看不是因為錯以為它太簡單,而是根本就太困難了啊…:)。不知道怎麼才能讓 mapplet 出現在 Google 的工具集裡呢,是不是只要提給 Google 就可以了?@@