jsm*_*kus 8 javascript google-maps google-maps-api-3 google-maps-markers
我需要根据时间制作一些半透明的标记.有没有办法控制标记的CSS不透明度?或者是否可以可靠地找到标记的DOM元素?
我使用Google Maps API v3.
Eva*_*van 16
您可以使用marker.setOpacity(0.5);
https://developers.google.com/maps/documentation/javascript/3.exp/reference#Marker
代码段:
var marker;
function initialize() {
var map = new google.maps.Map(
document.getElementById("map_canvas"), {
zoom: 10,
center: {
lat: -33.9,
lng: 151.2
},
mapTypeId: google.maps.MapTypeId.ROADMAP
});
marker = new google.maps.Marker({
position: {
lat: -33.890542,
lng: 151.274856
},
map: map,
title: "Bondi Beach"
});
}
google.maps.event.addDomListener(window, "load", initialize);Run Code Online (Sandbox Code Playgroud)
html,
body,
#map_canvas {
height: 100%;
width: 100%;
margin: 0px;
padding: 0px
}Run Code Online (Sandbox Code Playgroud)
<script src="https://maps.googleapis.com/maps/api/js"></script>
<input id="inc" type="text" value="0.5" />
<input type="button" id="set" value="set opacity" onclick="marker.setOpacity(parseFloat(document.getElementById('inc').value))" />
<input type="button" id="full" value="full opacity" onclick="marker.setOpacity(1.0);" />
<div id="map_canvas"></div>Run Code Online (Sandbox Code Playgroud)
小智 5
没有通过CSS的方法。您可以引用数组中的标记,然后使用setIcon()每个标记对象上的方法循环遍历该数组,以引用具有不同不透明度的图标(假设您使用的是具有Alpha透明度的PNG)。您必须调用一个函数来根据用户输入或其他事件更改图标。