Google Map API使用詳解(十六)——使用GMapOptions定製你的Google Map

來源:互聯網
上載者:User

之前我曾經解釋過建立一個地圖的詳細步驟,但是,真正建立地圖的核心步驟也就兩行代碼:

var map = new GMap2(document.getElementById("mapContainer"));

map.setCenter(new GLatLng(39.970981,116.314108), 16);

有這兩行代碼,你就可以在你的網頁上展現你的Google地圖了。但是,這個是最簡單的地圖,如果你想要對這個地圖做一些小小的變動,更符合你的胃口,可以使用GMapOptions來嘗試定製地圖。

簡單的說,GMapOptions是你在new一個GMap2對象的時候,可以直接使用物件變數的形式作為選擇性參數傳遞給GMap2的建構函式,GMapOptions自己沒有建構函式(地圖API中類建構函式的選擇性參數多用這種形式來定義),比如:

var options = {size:GSize(400, 300), backgroundColor:"#FF0000"};

var map = new GMap2(document.getElementById("mapContainer"), options);

這裡options就是一個GMapOptions,size、backgroundColor就是他的選項。

在GMapOptions中,我們可以定義以下這些屬性來指定地圖的某些特性:

1) size

預設情況下,你建立的地圖大小就是你給定的地圖容器的大小,所以,通常情況下,你需要顯式的聲明你的地圖容器的width和height屬性,否則,地圖是不能正常顯示的。但是,有了size這個可選屬性後,你就多了一個選擇了。你可以在建立地圖的時候直接通過size這個屬性指定地圖的大小,而不需要聽命於地圖容器了,即使這個地圖容器已經顯示的定義了width和height的大小。當然,size屬性對應的值是一個GSize類型的資料,比如,如果給定options={size:GSize(400,
300)},那麼,你所建立的地圖大小就是400×300的一個矩形塊,而和你指定的容器大小無關,但是地圖的左上方和地圖容器的左上方還是重合的。

2) mapTypes

建立地圖後,預設顯示的地圖類型是普通地圖,如果要加上可以選擇的衛星地圖、地形地圖等等其他類型的地圖,可以使用GMap2.setMapType()方法,但這樣往往會羅列一堆的setMapType。GMapOptions提供了mapTypes這個可選項,通過一個數組就可以給地圖加上多種支援類型,比如使用

{mapTypes:[G_NORMAL_MAP,G_SATELLITE_MAP,G_PHYSICAL_MAP]},你的地圖就擁有三種普通、衛星、地形三種類型了。mapTypes數組中的第一項是地圖載入的預設類型,所以,如果你想預設載入衛星地圖,把G_SATELLITE_MAP移到數組的第一項就可以了。

3) draggableCursor、draggingCursor

這兩個選項是用來定義地圖上你的游標類型,我把它們放在一起介紹不等於它們必須一起使用,你可以單獨使用任何一個。其中,draggableCursor是地圖可拖拽狀態(預設就是可拖拽的)下的游標,draggingCursor是拖拽地圖時的游標,對應的值和你在JavaScript裡面設定其他的游標時使用的值一樣,比如,{draggableCursor:"crosshair",draggingCursor:"move"}。當然,你也可以使用url形式加上你自己的表徵圖,看你發揮了!

4) backgroundColor

在地圖底圖的圖片還沒有傳送完成之前,地圖的顯示地區預設會使用灰色填充,這個就是backgroundColor可以發揮作用的地方了,你可以把灰色換成其他任何符合W3C標準的顏色,比如{backgroundColor:"#FF0000"}。

5) googleBarOptions

這個和你在地圖上通過GMap2.enableGoogleBar()時有關係,指定你添加GoogleBar時的一些預設屬性,定製性還是很強的。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.