Mam Mapę Google, w niej prostokąt, który można edytować, przenosić i zmieniać rozmiar itp. To, czego szukam, to sposób na zablokowanie danej wysokości prostokąta, więc tylko szerokość może zostać zmieniona.Google Maps Prostokąt edytowalny: jak zablokować (naprawić) wysokość od edycji
5
A
Odpowiedz
3
Możesz zapobiec zmianie rozmiaru prostokąta za pomocą zdarzenia bounds_changed w JavaScript.
Oto jsfiddle robocze: http://jsfiddle.net/h7ee4368/
prostokąt odniesienia API: https://developers.google.com/maps/documentation/javascript/reference?hl=de#Rectangle
JavaScript src:
var rectangle;
var originalBounds;
var map;
function initialize() {
var mapOptions = {
center: new google.maps.LatLng(44.5452, -78.5389),
zoom: 9
};
map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
var bounds = new google.maps.LatLngBounds(
new google.maps.LatLng(44.490, -78.649),
new google.maps.LatLng(44.599, -78.443)
);
originalBounds = bounds;
// Define the rectangle and set its editable property to true.
rectangle = new google.maps.Rectangle({
bounds: bounds,
editable: true,
draggable: true
});
rectangle.setMap(map);
// Add an event listener on the rectangle.
google.maps.event.addListener(rectangle, 'bounds_changed', boundsChangedCb);
}
var skipBoundsChangedCb = false;
function boundsChangedCb(event) {
if(skipBoundsChangedCb) return;
var ne = rectangle.getBounds().getNorthEast();
var sw = rectangle.getBounds().getSouthWest();
var origNe = originalBounds.getNorthEast();
var origSw = originalBounds.getSouthWest();
//avoid recursion
skipBoundsChangedCb = true;
rectangle.setBounds(new google.maps.LatLngBounds(
new google.maps.LatLng(ne.lat() - origNe.lat() + origSw.lat(), sw.lng()),
ne
));
skipBoundsChangedCb = false;
origNe = ne;
origSw = sw;
}
google.maps.event.addDomListener(window, 'load', initialize);
Powiązane problemy
- 1. jak naprawić rozmiar wielowierszowego tekstu edycji
- 2. Jak zablokować kamerę w Google Maps API V2
- 3. Google Maps API directionsService.route różni się od Google Maps Directions
- 4. Ciągnij od dołu Widok jak Google Maps
- 5. Zdobądź polilinię od Google maps directions V3
- 6. Jak wyodrębnić kod pocztowy od V3 Google Maps API
- 7. Edytowalny tekst w Raphaël
- 8. Kontrolowanie szerokości Google Maps InfoWindow
- 9. Google Maps v3 ustawiania okrąg o promieniu edytowalny ale nie centrum
- 10. Jak zablokować pamięć od nieuprzywilejowanego użytkownika?
- 11. Google maps odległość approximation
- 12. Narysuj mapę polilinii na drodze Aplikacja Google Maps Google Maps
- 13. Google maps infobox - maxWidth
- 14. Google Earth Heat Maps
- 15. Google Maps API DeletedApiProjectMapError
- 16. Jak właściwie korzystać z Google Maps API?
- 17. Google Maps Rozdzielczość rzędowa APIv3
- 18. Google maps responsive resize
- 19. Jakikolwiek sposób odróżnić budynek od drogi w Google Maps?
- 20. DrawerLayout z Google Maps
- 21. Zaznaczanie pól/prostokątów w Google Maps
- 22. Google Maps v3 OverlayView.getProjection()
- 23. Google maps removal control
- 24. Google Maps i DART
- 25. Google Maps Infowindow Pozycja
- 26. Google jak kontrola edycji/combo dla Delphi?
- 27. Google Maps JavaScript pochylenie widok różni się od tego na www.google.com/maps
- 28. Utwórz element span "edytowalny"
- 29. szeregowania XNA Prostokąt z Json.NET
- 30. Alternatywa Google Maps Geolocation API
@Gustav jeśli ta odpowiedź rozwiązała swoje pytanie należy rozważyć przyjmowanie go klikając czek -znak. – PSanetra