使用Jmapping更改标记图标

时间:2011-06-27 03:15:55

标签: jquery

我正在使用jmapping插件在Google地图中显示地点。如何更改所有图标的默认图标,我阅读GM Api文档,但我无法理解如何操作?

谢谢! PS我的本地没有任何代码。

3 个答案:

答案 0 :(得分:3)

今天遇到同样的问题。我完成了......

 $(document).ready(function(){

   $('#map').jMapping({

    category_icon_options: function(category){

       if (category.match('your-cat-name')) {

              return new google.maps.MarkerImage('path to your image');

           } 


         }

    });

 });

可能不是最优雅的解决方案。每个点都有不同的图形,因此您可以根据类别名称保留或扩展它。

答案 1 :(得分:3)

在显示地图的页面上,将以下内容放在以:

开头的javascript地图代码中
$('#map').jMapping({

您想要包含类似

的空白类别匹配图标选项行
category_icon_options: {
  '': {color: '#E8413A'}

在StyledMarker.js中,找到以下代码行:

getURL: function(props){
  var _url;
  var starcolor_=props.get('starcolor');
  var text_=props.get('text');
  var color_=props.get('color').replace(/#/,'');
  var fore_=props.get('fore').replace(/#/,'');
  if (starcolor_) {
    _url = bu_ + 'd_map_xpin_letter&chld=pin_star|';
  } else {
    _url = bu_ + 'd_map_pin_letter&chld=';
  }

使用选项将单引号之间的最后一行更改为所需的图标代码。例如:

} else {
    _url = bu_ + 'd_map_xpin_icon&chld=pin_sleft|bank-dollar|52B552';
  }

这将为您提供带有美元符号的绿色标记。

答案 2 :(得分:1)

我无法完成备用图标,但我可以使用此example更改颜色。

<div id="map"></div>

<div id="map-side-bar">
  <div class="map-location" data-jmapping="{id: 1, point: {lng: -122.2678847, lat: 37.8574888}, category: 'market'}">
    <a href="#" class="map-link">Berkeley Bowl</a>
    <div class="info-box">
      <p>A great place to get all your groceries, especially fresh fruits and vegetables.</p>
    </div>
  </div>
  <div class="map-location" data-jmapping="{id: 2, point: {lng: -122.4391131, lat: 37.7729943}, category: 'restaurant'}">
    <a href="#" class="map-link">Nopalito</a>
    <div class="info-box">
      <p>The best authentic Mexican restaurant in San Francisco.</p>
    </div>
  </div>
  <div class="map-location" data-jmapping="{id: 3, point: {lng: -122.4481651, lat: 37.8042096}, category: 'museum'}">
    <a href="#" class="map-link">Exploratorium</a>
    <div class="info-box">
      <p>A hands-on museum of science, art, and human perception in San Francisco.</p>
    </div>
  </div>
</div>

相应的jquery调用:

$(document).ready(function(){
  $('#map').jMapping({
    category_icon_options: {
      'restaurant': {color: '#E8413A'},
      'museum': {color: '#465AE0'},
      'default': {color: '#7CDF65'}
    }
  });
});