Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 谷歌地图img标记获得透明像素_Javascript_Google Maps_Google Maps Api 3 - Fatal编程技术网

Javascript 谷歌地图img标记获得透明像素

Javascript 谷歌地图img标记获得透明像素,javascript,google-maps,google-maps-api-3,Javascript,Google Maps,Google Maps Api 3,我使用GoogleMapsJSAPIv3在地图上放置图像标记 下面是一个问题的示例: /* *将map声明为全局变量 */ var映射; /* *使用GoogleMapsAPI内置机制来附加dom事件 */ google.maps.event.addDomListener(窗口,“加载”,函数(){ /* *创建地图 */ var map=new google.maps.map(document.getElementById(“map_div”){ 中心:新google.maps.LatLng

我使用GoogleMapsJSAPIv3在地图上放置图像标记

下面是一个问题的示例:

/*
*将map声明为全局变量
*/
var映射;
/*
*使用GoogleMapsAPI内置机制来附加dom事件
*/
google.maps.event.addDomListener(窗口,“加载”,函数(){
/*
*创建地图
*/
var map=new google.maps.map(document.getElementById(“map_div”){
中心:新google.maps.LatLng(33.808678,-117.918921),
缩放:14,
mapTypeId:google.maps.mapTypeId.ROADMAP
});
/*
*创建信息窗口(将由标记使用)
*/
var infoWindow=new google.maps.infoWindow();
/*
*marker creater函数(充当html参数的闭包)
*/
函数createMarker(选项,html){
var marker=新的google.maps.marker(选项);
如果(html){
google.maps.event.addListener(标记“单击”,函数(){
setContent(html);
infoWindow.open(options.map,this);
});
}
返回标记;
}
/*
*向地图添加标记
*/
var marker0=createMarker({
位置:新google.maps.LatLng(33.808678,-117.918921),
地图:地图,
图标:“http://html.accuraten.com/doubleup-html/public/img/map-marker@2x.png“
},“标记0这是主标记。

”; });
当您在非视网膜桌面屏幕(例如OSX/Safari)上打开此代码并前后缩放时,您可以在该标记上看到透明像素

看起来像这样


为什么会这样?有什么解决办法吗?

在OS X Safari&Chrome上测试过,我无法复制您在图像中显示的内容。@mrupsidown您有视网膜屏幕吗?我可以在非视网膜设置的新旧MBP上复制。只在狩猎中,这里也一样。我看不出有什么问题。在Safari/OSX上测试。你们能确保并没有其他脚本、插件或扩展导致地图加载缓慢吗?因为您描述的是透明像素,所以我假设地图分幅尚未加载。尝试在私有窗口中加载它,看看问题是否仍然存在。
/*
 * declare map as a global variable
 */
var map;

/*
 * use google maps api built-in mechanism to attach dom events
 */
google.maps.event.addDomListener(window, "load", function () {

  /*
   * create map
   */
  var map = new google.maps.Map(document.getElementById("map_div"), {
    center: new google.maps.LatLng(33.808678, -117.918921),
    zoom: 14,
    mapTypeId: google.maps.MapTypeId.ROADMAP
  });

  /*
   * create infowindow (which will be used by markers)
   */
  var infoWindow = new google.maps.InfoWindow();

  /*
   * marker creater function (acts as a closure for html parameter)
   */
  function createMarker(options, html) {
    var marker = new google.maps.Marker(options);
    if (html) {
      google.maps.event.addListener(marker, "click", function () {
        infoWindow.setContent(html);
        infoWindow.open(options.map, this);
      });
    }
    return marker;
  }

  /*
   * add markers to map
   */
  var marker0 = createMarker({
    position: new google.maps.LatLng(33.808678, -117.918921),
    map: map,
    icon: "http://html.accuraten.com/doubleup-html/public/img/map-marker@2x.png"
  }, "<h1>Marker 0</h1><p>This is the home marker.</p>");
});