JSFiddle , воспроизводящий проблему.
Я добавляю пользовательскую кнопку в верхний центр карты.У меня есть событие клика, прикрепленное к карте, которое исчезнет в кнопкеСобытие щелчка правой кнопкой мыши на карте, которое приведет к исчезновению кнопки.
Чтобы воспроизвести проблему:
- Щелкните правой кнопкой мыши карту, чтобы исчезнуть с кнопки.
- Увеличить /Уменьшите уровень масштабирования как минимум на один уровень.
- Щелкните левой кнопкой мыши, чтобы ослабить кнопку.
В этот момент кнопка вернется в положение, отличное от исходного положения.
Увеличение / уменьшение уровня масштабирования как минимум на один уровень.
После этого вы увидите, что кнопка вернулась в исходное положение.
var mapCanvas = document.getElementById("map");
var mapOptions = {
center: new google.maps.LatLng(41.508742, -0.120850),
zoom: 7,
disableDefaultUI: true
};
var map = new google.maps.Map(mapCanvas, mapOptions);
var btn = document.getElementById('myButton');
map.controls[google.maps.ControlPosition.TOP_CENTER].push(btn);
map.addListener('click', function() {
jQuery('#myButton').fadeIn();
});
map.addListener('rightclick', function() {
jQuery('#myButton').fadeOut();
});
.button {
display: block;
}
#map {
width: 300px;
height: 300px
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!DOCTYPE html>
<html>
<body>
<div id="map"></div>
<button class="button" id="myButton">asdf</button>
<script src="https://maps.googleapis.com/maps/api/js?callback=myMap"></script>
</body>
</html>