我使用Google Maps JS API v3将图像标记放在地图上。
以下是JSFiddle的问题说明:
http://jsfiddle.net/t99ars8L/1/
/*
* 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>");
});
当您在非Retina桌面屏幕(例如OSX / Safari)上打开此代码并来回缩放时,您可以在此标记上看到透明像素。
看起来像这样 http://i304.photobucket.com/albums/nn185/vladgenie/%20%202015-11-16%20%2012.51.13_zpspjir2ip5.png
为什么会这样?有没有解决方法?