javascript - 谷歌地图上的固定标记

标签 javascript jquery css google-maps google-maps-api-3

我正在尝试复制 this JSFIDDLE link 中所示的固定标记功能,但尽管使用了相同的代码,但标记似乎并未呈现在我的 html 页面中。除了 js fiddle 代码之外,我唯一添加的是脚本源。有人可以建议我哪里出错了吗?

这是我从 JSFIDDLE link 复制的代码.

    <!DOCTYPE html>

<html>
<head>
    <title>Page Title</title>
    <style>
        body,html,#map_canvas{height:100%;margin:0;}
#map_canvas .centerMarker{
  position:absolute;
  /*url of the marker*/
  background:url(http://maps.gstatic.com/mapfiles/markers2/marker.png) no-repeat;
  /*center the marker*/
  top:50%;left:50%;
  z-index:1;
  /*fix offset when needed*/
  margin-left:-10px;
  margin-top:-34px;
  /*size of the image*/
  height:34px;
  width:20px;
  cursor:pointer;
}
    </style>
    <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

    <script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script>


    <script>
            function initialize() {
        var mapOptions = {
          zoom: 14,
          center: new google.maps.LatLng(52.5498783, 13.425209099999961),
          mapTypeId: google.maps.MapTypeId.ROADMAP
        };
        map = new google.maps.Map(document.getElementById('map_canvas'),
            mapOptions);
        $('<div/>').addClass('centerMarker').appendTo(map.getDiv())
             //do something onclick
            .click(function(){
               var that=$(this);
               if(!that.data('win')){
                that.data('win',new google.maps.InfoWindow({content:'this is the center'}));
                that.data('win').bindTo('position',map,'center');
               }
               that.data('win').open(map);
            });
      };

      google.maps.event.addDomListener(window, 'load', initialize);

    </script>

</head>

<body>
<div id="map_canvas"></div>


</body>
</html>

最佳答案

您需要包括 jQuery,因为您正在使用 $('<div/>') ..

我运行了你的文件,添加后运行良好

<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

之前

<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script>

让我知道这是否适合你:)

附言您可能错过了 jQuery,因为它包含在 jsFiddle 左侧的下拉菜单中。

关于javascript - 谷歌地图上的固定标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19594880/

相关文章:

javascript - 获取和获取重试的拦截器? (Javascript)

javascript - html5 canvas 2d制作人体并填充区域

javascript - 如何检查 Ajax 返回的 JSON 的正确性

javascript - 如何在删除内容后键入文本

css - Bootstrap 3 - col-md-4 到 col-sm-6,或 3x2 到 2x3 的网格

javascript - XMLHttpRequest无法加载XXX No'Access-Control-Allow-Origin' header

javascript - 使用 XHR2/AJAX 显示下载文件的进度条

CSS 无法对齐按钮

html - 将标题顶部的文本移动到标题中间

javascript - 在 C# 中清除响应后回发后执行 Javascript