我在一个页面上用几个标记等实现了几个诺基亚地图。为了做到这一点,我创建了一个包含所需配置和功能的诺基亚地图对象,并扩展了这个对象,为每个地图创建了一个对象。
工作正常,我得到每张地图中显示的所有标记。问题是,infobubble组件只能附加到一个地图/显示器上。
我正在使用诺基亚地图api 2.5.4 http://js.api.here.com/se/2.5.4/jsl.js
我是如何启动这些地图的小js片段:
var map1, map2, ..,
var nokiaMap = {
appId : ...
authToken : ...
infoBubbleContainer : new nokia.maps.map.component.InfoBubbles(),
...
init : function(){....},
initMap : function() {
var me = this;
this.map = new nokia.maps.map.Display(document.getElementById(this.mapContainerId), {
zoomLevel: zoom,
components: [
new nokia.maps.map.component.Behavior(),
new nokia.maps.map.component.ZoomBar (),
new nokia.maps.map.component.TypeSelector(),
new nokia.maps.map.component.ScaleBar(),
me.infoBubbleContainer
],
center : [this.lat, this.lon] ...
}
//call the maps
map1 = jQuery.extend(true, {}, nokiaMap);
map2 = jQuery.extend(true, {}, nokiaMap); ...
错误消息:
Uncaught Error: IllegalArgument: Error: A component can only be attached to one display!
任何人都有解决此问题或解决方法的方法吗?