如何使地图超出图层边界?

时间:2017-02-01 15:11:17

标签: javascript ajax leaflet

我有一个传单地图,我添加了一个从ajax调用返回的点图层,我想让地图稍微远离它的边界,以便我可以看到它所在的国家,这怎么可能可以吗?

$.ajax({
        type:"POST",
        url:"CustomerID_geojson.php",
        data:"OrdersID="+ Cust ,
        dataType: 'json',
        success: function (response) 
        {
            geojsonLayer = L.geoJson(
            response,
            {
                pointToLayer: function(feature, latlng) 
                    {
                        var redMarker = L.AwesomeMarkers.icon({
                            icon: 'user', 
                            markerColor: 'purple',
                            prefix: 'fa', 
                            iconColor: 'white'
                          });
                       return L.marker(latlng, {icon:redMarker});
                    },
                onEachFeature: function (feature, layer) 
                    {
                         layer.bindTooltip('<label class="CustToolTip">Customer: ' + feature.properties.nick_name_) + '</label>';
                    }
            }).addTo(mymap);
            mymap.fitBounds(geojsonLayer.getBounds());
        }
     })

enter image description here

1 个答案:

答案 0 :(得分:1)

无法完成。点是无限小的并且具有零面积,因此一个点特征的边界框具有零面积。在这种情况下,缩放到最大缩放级别是预期的行为。

您可能想要使用其他方法。例如创建一个 $message = array( 'Source' => $this->sender, 'Destination' => array( 'ToAddresses' => [$this->to], ), 'Message' => array( 'Subject' => array( 'Data' => $this->subject, 'Charset' => 'utf-8', ), 'Body' => array( 'Text' => array( 'Data' => $this->bodytext, 'Charset' => 'utf-8', ), 'Html' => array( // Data is required 'Data' => $this->bodyhtml, 'Charset' => 'utf-8', ), ), ), ); ,其中心位于标记中,以半米为单位将其添加到地图中,以便您可以获取其边界,将其从地图中移除,然后缩放到这些边界。