是否可以使用 javascript 从 Google 地图中删除控件而无需创建函数?



使用这个小提琴:https://jsfiddle.net/mwsy5vhu/但想象一下我们看不到代码。(因为它不是我们的网站(。我们不知道使用地图的 var X 名称。

我们如何使用 javascript 隐藏控件?即:我们在控制台>打开浏览器检查器工具

在控制台中,我们可以执行什么来隐藏控件?

我试过:

map.setOptions({disableDefaultUI: true});

(出于某种原因,即使使用真正的 var 名称即 map,它也会给我一个错误,说地图没有定义(?

需要一种方法来隐藏地图控件而无需访问"源代码",例如只需注入动态 JavaScript 代码来定位现有地图。

也许这可能与 CSS 有关?

谢谢。

google.maps.Map对象上有一个.setOptions方法,它允许您动态设置MapOptions

var defaultUI = true;
google.maps.event.addDomListener(document.getElementById('disableUI'), "click", function() {
if (defaultUI) {
map.setOptions({disableDefaultUI: true}); 
} else {
map.setOptions({disableDefaultUI: false}); 
}
defaultUI = !defaultUI;
});

概念验证小提琴

代码片段:

function initMap() {
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 4,
center: {
lat: -33,
lng: 151
},
// disableDefaultUI: true
});
var defaultUI = true;
google.maps.event.addDomListener(document.getElementById('disableUI'), "click", function() {
if (defaultUI) {
map.setOptions({
disableDefaultUI: true
});
} else {
map.setOptions({
disableDefaultUI: false
});
}
defaultUI = !defaultUI;
});
}
/* Always set the map height explicitly to define the size of the div
* element that contains the map. */
#map {
height: 90%;
}
/* Optional: Makes the sample page fill the window. */
html,
body {
height: 100%;
margin: 0;
padding: 0;
}
<input id="disableUI" value="disableUI" type="button" />
<div id="map"></div>
<!-- Replace the value of the key parameter with your own API key. -->
<script async defer src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCkUOdZ5y7hMm0yrcCQoCvLwzdM6M8s5qk&callback=initMap">
</script>

相关内容

  • 没有找到相关文章

最新更新