0

仕事以外は何でも手に入るfeaturecClick

私のJS:

window.onload = function(){
    var cartoDbTableName = 'sipri_import_export_map_1950_2014';
    var domId = 'map';
    var mapStyle = document.getElementsByClassName('map-style');
    var lat = 0;
    var lon = 0;
    var zoomLvl = 2;
    var options = {
        center: [lat,lon],
        zoom: zoomLvl
    };
    var mapObject = new L.Map(domId,options);
    var layerSource = {
        user_name: 'chrismp',
        type: 'cartodb',
        sublayers: [
            {
                sql: "SELECT * FROM "+cartoDbTableName+" WHERE (gwsyear <= 1950 AND gwsyear > 0)",
                cartocss: mapStyle[0].innerHTML
            }
        ]
    };

    L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png')
        .addTo(mapObject);

    cartodb.createLayer(mapObject,layerSource)
        .addTo(mapObject)
        .on('done',function(layer){
                layer.getSubLayer(0).on('featureClick', function(e, latlng, pos, data, subLayerIndex) {
                  console.log(e, latlng, pos, data, subLayerInde);
                }).on('error',function(err){
                    console.log('featureClick error: '+err);
                });
        }).on('error',function(err){
            console.log(err);
        });
};

マップはスタイリングで読み込まれますが、カーソルが国の上にあるときにカーソルが指ポインターに切り替わらず、クリックしても何も起こりません。何を与える?

4

1 に答える 1

0

同様の問題がありました-これに関するCartoDBのドキュメントは少し不完全だと思います...これを追加する必要があると思います:

 cdb.vis.Vis.addInfowindow(map, sublayers, [/*ADD DESIRED INFO FIELDS HERE*/]);

たとえば、次のようになります。

 cartodb.createLayer(mapObject,layerSource)
    .addTo(mapObject)
    .on('done',function(layer){

            //ADD THESE TWO LINES HERE
            sublayers = layer.getSubLayer(0);
            cdb.vis.Vis.addInfowindow(map, sublayers, [/*ADD DESIRED INFO FIELDS HERE*/]);


            layer.getSubLayer(0).on('featureClick', function(e, latlng, pos, data, subLayerIndex) {
              console.log(e, latlng, pos, data, subLayerInde);
            }).on('error',function(err){
                console.log('featureClick error: '+err);
            });
    })

それが役立つことを願っています。

于 2015-09-14T17:25:38.870 に答える