[OpenLayers-Users] How do I make the map static?

Marco Baumgärtner kalleernst at googlemail.com
Tue Jul 31 00:07:39 PDT 2012


Using a smartphone(android) I cannot scroll down on the page containing 
an almost full-screen map as moving the finger over the map makes the 
map pan instead. Which is nice in general but not in this case. How do I 
make the map static?

This is my code:

> <div style="width: 100%; height: 100%;" id="mapdiv">
>
> </div>
>
> <script src="http://www.openlayers.org/api/OpenLayers.js"></script>
>
> <?php
>
>   $bildn = "image.png";
>
>   $gr = getimagesize($bildn); ?>
>
> <script>
>
>   OpenLayers.Lang.setCode('de');
>
>   map = new OpenLayers.Map("mapdiv");
>
>   map.addLayer(new OpenLayers.Layer.OSM());
>
>   projectTo = map.getProjectionObject();
>
>   epsg4326 = new OpenLayers.Projection("EPSG:4326")
>
>   var lonLat = new OpenLayers.LonLat( <?php echo $_GET['lon']; ?> ,
> <?php echo $_GET['lat']; ?> ).transform(epsg4326, projectTo);
>
>   var zoom = <?php echo $radius; ?> ;
>
>   map.setCenter(lonLat, zoom);
>
>   var vectorLayer = new OpenLayers.Layer.Vector("Overlay");
>
>   var feature = new OpenLayers.Feature.Vector(
>
>   new OpenLayers.Geometry.Point( <?php echo $_GET['lon']; ?> , <?php
> echo $_GET['lat']; ?> ).transform(epsg4326, projectTo),
>
>   {
>
>       description: 'Here'
>
>   },
>
>   {
>
>       externalGraphic: '<?php echo $bildn; ?>',
>
>       graphicHeight: <?php echo $gr[1]; ?> , graphicWidth: <?php echo
> $gr[0]; ?> , graphicXOffset: <?php echo - $gr[0] / 2; ?> ,
> graphicYOffset: <?php echo - $gr[1]; ?>
>
>   });
>
>   vectorLayer.addFeatures(feature);
>
>   map.addLayer(vectorLayer);
>
>   //Add a selector control to the vectorLayer with popup functions
>
>   var controls = {
>
>       selector: new OpenLayers.Control.SelectFeature(vectorLayer,
>
>       {
>
>           onSelect: createPopup,
>
>           onUnselect: destroyPopup
>
>       })
>
>   };
>
>
>
>   function createPopup(feature)
>
>   {
>
>       feature.popup = new OpenLayers.Popup.FramedCloud("pop",
>
>       feature.geometry.getBounds().getCenterLonLat(),
>
>       null, '<div class="markerContent">' +
> feature.attributes.description + '</div>',
>
>       null,
>
>       true,
>
>
>
>       function ()
>
>       {
>
>           controls['selector'].unselectAll();
>
>       });
>
>       //feature.popup.closeOnMove = true;
>
>       map.addPopup(feature.popup);
>
>   }
>
>
>
>   function destroyPopup(feature)
>
>   {
>
>       feature.popup.destroy();
>
>       feature.popup = null;
>
>   }
>
>   map.addControl(controls['selector']);
>
>   controls['selector'].activate();
>
>   </script>



More information about the Users mailing list