On Jun 21, 2:31 pm, Michael Bentz <[email protected]> wrote: > My apologies that I do not have this live online right now as I have > no method of doing so yet...
http://www.easypagez.com/hosting.html -- Larry > > According to the API docs, hiding the traffic layer is done simply by > using "setMap(null)"; > > I have a toggle function that handles this: > > function toggleTraffic (toggle, map) { > var trafficLayer = new google.maps.TrafficLayer(); > if (toggle) { > trafficLayer.setMap(map); > } else { > alert("Should Work"); > trafficLayer.setMap(null); > } > } > > I get the alert "Should Work", but the traffic layer persists. > > My entire code is here: > > <html> > <head> > <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> > <script type="text/javascript" src="http://maps.google.com/maps/api/js? > sensor=false"></script> > <script type="text/javascript"> > > var map; > var houston = new google.maps.LatLng(29.75, -95.37); > > function TWControl(controlDiv, map) { > > // Main Control DIV Padding > controlDiv.style.padding = '5px'; > > // Set CSS For Control UI > var controlUI = document.createElement('DIV'); > controlUI.style.backgroundColor = 'black'; > controlUI.style.color = 'white'; > controlUI.style.borderColor = 'white'; > controlUI.style.borderStyle = 'solid'; > controlUI.style.borderWidth = '2px'; > controlUI.style.cursor = 'pointer'; > controlUI.style.textAlign = 'center'; > > // Append Div To controlDiv > controlDiv.appendChild(controlUI); > > // Set CSS For Control UI Interior > var controlText = document.createElement('DIV'); > controlText.style.fontFamily = 'Arial,sans-serif'; > controlText.style.fontSize = '12px'; > controlText.style.paddingLeft = '14px'; > controlText.style.paddingRight = '14px'; > controlText.innerHTML = 'Traffic On'; > > // Append Div To controlUI > controlUI.appendChild(controlText); > > // Setup click event listeners > google.maps.event.addDomListener(controlUI, 'click', > function() { > if (controlText.innerHTML == "Traffic On") { > controlText.innerHTML = "Traffic Off"; > toggleTraffic(1, map); > } else if (controlText.innerHTML == "Traffic Off") { > controlText.innerHTML = "Traffic On"; > toggleTraffic(0, map); > } > }); > } > > function toggleTraffic (toggle, map) { > var trafficLayer = new google.maps.TrafficLayer(); > if (toggle) { > trafficLayer.setMap(map); > } else { > alert("Should Work"); > trafficLayer.setMap(null); > } > } > > function initialize () { > var mapDiv = document.getElementById('map_canvas'); > var myOptions = { > zoom: 9, > center: houston, > mapTypeId: google.maps.MapTypeId.ROADMAP > } > > map = new google.maps.Map(mapDiv, myOptions); > > var twControlDiv = document.createElement('DIV'); > var twControl = new TWControl(twControlDiv, map); > > map.controls[google.maps.ControlPosition.RIGHT].push(twControlDiv); > } > > </script> > </head> > <body onload="initialize()"> > <div id="map_canvas" style="width:500px; height:400px"></div> > </body> > </html> -- You received this message because you are subscribed to the Google Groups "Google Maps JavaScript API v3" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-maps-js-api-v3?hl=en.
