Changeset 96730 in spip-zone


Ignore:
Timestamp:
Apr 20, 2016, 8:52:38 PM (3 years ago)
Author:
kent1@…
Message:

à la fin du tracé d'un topojson comme fond de carte, le mettre en bas pour ne pas cacher les autres tracés sur la carte

Utiliser map et non map1 dans l'évènement ready

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/cartes/trunk/squelettes/js_carte/carte.js

    r96688 r96730  
    22        $('.map_wrapper').height($(window).height() - $('.footer').outerHeight()-$('.main').outerHeight());
    33        if (typeof map_resize != 'undefined' && typeof map_resize.invalidateSize == 'function') {
    4                 map_resize.invalidateSize();
     4                map_resize.invalidateSize(true);
    55        }
    66}
     
    1515}
    1616
    17 var country_min_topojson_addlayer = function(e){
     17var country_min_topojson_addlayer = function(e,topojson){
    1818    e.layer.eachLayer(function(dist){
    1919        var iso = dist.toGeoJSON().properties.ISO2.toLowerCase();
     
    2727        }
    2828    });
     29    window.setTimeout(function(){topojson.bringToBack()},5);
    2930}
    3031$(document).ready(function () {
     
    4142                        resized = map1;
    4243                }
    43                 resizemap(resized)
     44                resizemap(resized);
    4445        });
    45         jQuery('#map1').on('ready',function(map){
    46                 if(typeof map1 != 'undefined' && map1.options.options && map1.options.options.popup == 'control'){
    47                         var info = L.control();
    48                         info.onAdd = function (map) {
    49                                 this._div = L.DomUtil.create('div', 'info leaflet-popup-content-wrapper');
    50                                 this.update();
    51                                 return this._div;
    52                         };
    53        
    54                         // method that we will use to update the control based on feature properties passed
    55                         info.update = function (text) {
    56                                 if(typeof text != 'undefined'){
    57                                         L.DomUtil.setOpacity(this._div,1);
     46
     47        jQuery('#map1').on('ready',function(e, map){
     48            if(map.options.options && map.options.options.popup == 'control'){
     49                var info = L.control();
     50                info.onAdd = function (map) {
     51                        this._div = L.DomUtil.create('div', 'info leaflet-popup-content-wrapper');
     52                        this.update();
     53                        return this._div;
     54                };
     55
     56                // method that we will use to update the control based on feature properties passed
     57                info.update = function (text) {
     58                        if(typeof text != 'undefined'){
     59                                L.DomUtil.setOpacity(this._div,1);
     60                        }
     61                        else {
     62                                L.DomUtil.setOpacity(this._div,0);
     63                        }
     64                        this._div.innerHTML = text ? '<div class="leaflet-popup-content">'+text+'</div>' : '';
     65                };
     66
     67                info.addTo(map);
     68                map.eachLayer(function(layer){
     69                        layer.off('click').on('click',function(e,f){
     70                                if(layer._popup && layer._popup._content){
     71                                        console.log($.inArray('informatif',layer.feature.role));
     72                                        console.log(layer.feature);
     73                                        if(layer.feature.properties.role && $.inArray('informatif',layer.feature.properties.role) != -1)
     74                                            return false;
     75                                        info.update(layer._popup._content);
     76                                        map.closePopup();
     77                                        map.panTo(e.latlng);
     78                                        return false;
    5879                                }
    59                                 else {
    60                                         L.DomUtil.setOpacity(this._div,0);
    61                                 }
    62                                 this._div.innerHTML = text ? '<div class="leaflet-popup-content">'+text+'</div>' : '';
    63                         };
    64        
    65                         info.addTo(map1);
    66                         map1.eachLayer(function(layer){
    67                                 layer.off('click').on('click',function(e,f){
    68                                         if(layer._popup && layer._popup._content){
    69                                                 info.update(layer._popup._content);
    70                                                 map1.closePopup();
    71                                                 map1.panTo(e.latlng)
    72                                                 return false;
    73                                         }
    74                                 });
    7580                        });
    76                         map1.on('popupopen',function(){
    77                                 info.update();
    78                         })
    79                 }
    80                 if(typeof map1 != 'undefined' && map1.options.options && map1.options.options.layer_topojson){
    81                         var topojson_layer = new L.TOPOJSON(map1.options.options.layer_topojson, {async: true}),
    82                                 fichier_topojson = map1.options.options.layer_topojson.replace(/^.*[\\\/]/, '').replace(/\./g,'_'),
    83                                 addlayer = fichier_topojson+'_addlayer';
    84                         if(typeof window[addlayer] == 'function'){
    85                         topojson_layer.on('addlayer',function(e){
    86                                 eval(eval(addlayer)(e));
    87                         });
    88                         }
    89                         map1.addLayer(topojson_layer);
    90                 }
     81                });
     82                map.on('popupopen',function(){
     83                        info.update();
     84                });
     85            }
     86            if(map.options.options && map.options.options.layer_topojson){
     87                var topojson_layer = new L.TOPOJSON(map.options.options.layer_topojson, {async: true}),
     88                        fichier_topojson = map1.options.options.layer_topojson.replace(/^.*[\\\/]/, '').replace(/\./g,'_'),
     89                        addlayer = fichier_topojson+'_addlayer';
     90                if(typeof window[addlayer] == 'function'){
     91                        topojson_layer.on('addlayer',function(e){
     92                                eval(eval(addlayer)(e,topojson_layer));
     93                        });
     94                }
     95                map.addLayer(topojson_layer);
     96                topojson_layer.bringToFront();
     97            }
    9198        });
    9299});
Note: See TracChangeset for help on using the changeset viewer.