Archive for 十二月, 2008

隨需載入UrMap API (include on demand)

Posted on 十二月 29, 2008. Filed under: API問題 |

有時候有些網頁不需要在一開始就載入urmap api,有可能是使用者觸發某個動作才要顯示地圖,這時候用原本取得API的方式(document.write)就無法作到include on demand,因此我寫了一個小程式,經過壓縮之後只有1.6kb。接下來你只要呼叫

Read Full Post | Make a Comment ( 2 so far )

UMarker enableDraging

Posted on 十二月 17, 2008. Filed under: API問題 |

enableDraging 讓地標設為可拖拉,透過增加監聽函式addListener 榜定dragging 與 dragend事件,可以進階控制UMarker被拖動時的動作。 function createMarker(point) { var marker = new UMarker(point, myIcon); marker.addListener(‘dragging’, function(e, mkr, latlng) { //marker.openInfoWindow(‘Hello!’); document.getElementById(‘log’).innerHTML = ‘正在拖拉:’+latlng.toUrlString(); }); marker.addListener(‘dragend’, function(e, mkr, latlng) { //marker.openInfoWindow(‘Hello!’); document.getElementById(‘log’).innerHTML = ‘拖拉結束:’+latlng.toUrlString(); }); return marker; } marker = createMarker(map.getCenter()); map.addOverlay(marker); marker.enableDragging(); 觀看範例: http://www.urmap.com/SearchEngine/api/documentation/enableDraging.html

Read Full Post | Make a Comment ( None so far )

UMarker triggerEvent

Posted on 十二月 17, 2008. Filed under: API問題 |

triggerEvent可以讓你直接觸發marker上自定義的監聽事件,通常會做一個地標列表列出所有的marker,當點選列表時觸發原本榜定在marker上的事件。 var map = new UMap(document.getElementById(‘map’)); map.setControlType(U_FULL_CONTROL); map.centerAndZoom(new ULatLng(25.035405, 121.520255), 9); // 函式:用來產生一個會顯示指定號碼在訊息視窗中的地標 function createMarker(point, number) { var marker = new UMarker(point); marker.setMouseonInfo(‘label:’+number, ‘desc:’+number); var html = ‘地標 #<b>’ + number + 』; marker.addListener(‘click’, function() { marker.openInfoWindow(html); }); return marker; } // 加入十個隨機產生的地標 var bounds = map.getBounds(); var width = bounds.getNorthEast().lng() – bounds.getSouthWest().lng(); var height [...]

Read Full Post | Make a Comment ( None so far )

如何更改地標mouse on訊息視窗的style?

Posted on 十二月 15, 2008. Filed under: API問題 |

CSS /** MouseOnDiv 區塊 **/ .UMarkerMouseOnDiv{ position: absolute; top:0px; width:120px; z-index:1; font:12px tahoma; display:none; overflow:hidden; opacity:0.8; filter:alpha(opacity:80); border: 1px solid #0099FF; } /** MouseOnDiv 標題 **/ .UMarkerMouseOnDivName{ font-size: 13px; font-weight: bold; color: #FFFFFF; background-image: url(UMarkerTop.gif); background-repeat: repeat-x; background-position: left bottom; background-color: #0f69fe; border: 1px solid #FFFFFF; padding-top: 1px; padding-right: 3px; padding-bottom: 5px; padding-left: 3px; } [...]

Read Full Post | Make a Comment ( None so far )

URMAP API 2.0 推出

Posted on 十二月 12, 2008. Filed under: 版本發佈 |

URMAP API 2.0版大幅更新及改善了許多功能,並且相容於前一版。 為了提供更快速、可靠的API服務,取得API的網址由原本的http://www.urmap.com/SearchEngine/api/getapi.jsp 改成 http://api.urmap.com/js/getapi.php, 原本的API路徑雖然還會繼續服務,但是不再提供更新,若要取得最新的API請將網址改為新的API路徑。建議不管您是否想更換新的API,都要將路徑改為新的API路徑,以取得更快速更可靠的服務。(URMAP API 2.0 Document) 雖經過一連串的測試,但難免可能會有疏漏,若有bug請留言或寄信至bingo.yan@olemap.com,更新簡介如下: 出圖速度更快,減少等待時間。 增進UMarker的效能,簡化UMarker物件。 UMarker可以拖拉(enableDragging)和取消拖拉(disableDragging)。 增加UMarker的可監聽事件(mouseout, mousedown, mouseup, contextmenu, dragend, draging)。 新增UDom overlay,你可以透過UDom將任何DOM物件(包括Flash)插到指定的經緯度上面(看範例)。 許多人一直期望有的UOverviewControl控制項,能夠在地圖上放入縮略地圖控制項。(看範例) UInfoWindowOptions 更豐富的訊息視窗,且可以設定分頁內容,infoWindow不再只有單調的內容。(看範例) addStaticOverlay 可以在地圖上加入一個靜態的套疊物件(不隨地圖移動)。(看範例) 使用UOverlayManager來管理大量地標,透過該物件來管理地標,可以有效的控制在地圖上顯示的地標,例如可以設定最大和最小顯示層級,拖動地圖和縮放地圖時會判斷地標是否在可是範圍之內,若沒有則不顯示,避免過多的地標造成頁面loading過重。另外當開啟autoMergeMarker功能時,會將鄰近的地標合併,避免過多的地標重疊。(看範例) ULatLng 可直接計算與另外一個ULatLng的距離。 相容於Google Chrome。 更多的範例請參考UrMap API BLOG。

Read Full Post | Make a Comment ( 4 so far )

Liked it here?
Why not try sites on the blogroll...