Google map iframe — убрать увеличение карты при прокрутке страницы колесиком мышки
Убрать увеличение карты для iframe
При прокрутки страницы колесиком мышки, когда курсор попадает на карту, вместо прокрутки далее страницы вниз происходит увеличение карты (особенно если карта на всю ширину страницы).
Как убрать?
Перед iframe добавляем div:
<div class="overlay" onClick="style.pointerEvents='none'"></div>
<iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d1998.5192766409587!2d30.2653292!3d59.940118700000006!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x469631284de3a6fb%3A0x17f2808218507f5a!2zMTYt0Y8g0LvQuNC90LjRjywg0KHQsNC90LrRgi3Qn9C10YLQtdGA0LHRg9GA0LM!5e0!3m2!1sru!2sru!4v1438004309074" width="100%" height="550" frameborder="0" style="border:0" allowfullscreen></iframe>Стиль:
.overlay {
background:transparent;
position:relative;
width:100%;
height:550px;
top:550px;
margin-top:-550px;
}И если пользователь все-таки решил работать с картой — при клике на блок, который появился поверх карты — убираем его:
$(document).ready(function(){
$('.overlay').click(function() {
$(this).remove();
});
});Правильнее всего конечно для этого случая рисовать карту через API с параметром
scrollwheel:false, но, бывает, нужно решение именно для фрейма.Убрать увеличение карты - API
google_maps(); // Load google maps onload page
function google_maps() {
var latlng = new google.maps.LatLng(55.736812,37.617574);
var settings = {
zoom: 16,
center: latlng,
mapTypeControl: true,
mapTypeControlOptions: {style: google.maps.MapTypeControlStyle.DROPDOWN_MENU},
scrollwheel: false,
disableDoubleClickZoom: true,
navigationControlOptions: {style: google.maps.NavigationControlStyle.SMALL},
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map"), settings);
var myLatlng = new google.maps.LatLng(55.736812,37.617574);
var myOptions = {
zoom: 16,
center: myLatlng,
scrollwheel: false,
disableDoubleClickZoom: true,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
Comments