2016-05-10 6 views
1

いくつかのツリーピットの場所を含むコミュニティマップを設定しています。地図はhttp://moabiter-baumscheiben.seedbomb.city/map/で見つけることができます。私はベースマップとcartodbのためにマップボックスを使用して、ツリーピットマーカーでレイヤーを含めるようにしています。地図上に変数が表示されないCartodb情報ウィンドウ

カスタム情報ウィンドウを実行するために管理しましたが、私のcartobdデータベースから変数({{img}}および{{name}})が表示されません。

エラーが見つかりません。誰かが私を助けることができれば素晴らしいだろう。

私はザ・情報ウィンドウのスクリプトである<head>

<link href='https://api.tiles.mapbox.com/mapbox.js/v2.2.1/mapbox.css' rel='stylesheet' /> 
<link rel="stylesheet" href="https://cartodb-libs.global.ssl.fastly.net/cartodb.js/v3/3.15/themes/css/cartodb.css" /> 
<script src="https://cartodb-libs.global.ssl.fastly.net/cartodb.js/v3/3.15/cartodb.uncompressed.js"></script> 
<script src='https://api.tiles.mapbox.com/mapbox.js/v2.2.1/mapbox.standalone.js'></script> 

にすべてのmapboxとcartodb CSSやJSを含める:

<script type="infowindow/html" id="infowindow_template"> 
    <div class="cartodb-popup v2"> 
     <a href="#close" class="cartodb-popup-close-button close">x</a> 
     <div class="cartodb-popup-content-wrapper"> 
      <div class="cartodb-popup-header"> 
       <h1>Baumscheibe</h1> 
      </div> 
      <div class="cartodb-popup-content"> 
       <!-- content.data contains the field info --> 
       <h3>Image:</h3> <img src="{{img}}"> 
       <h3>Gepflegt von: {{name}}</h3> 
      </div> 
     </div> 
     <div class="cartodb-popup-tip-container"></div> 
    </div> 
</script> 

そして、このマップレイヤのためのスクリプト:

<script> 
    L.mapbox.accessToken = 'My MapBox access code'; 

    var southWest = L.latLng(52.510135, 13.284534) 
     , northEast = L.latLng(52.559125, 13.400293) 
     , bounds = L.latLngBounds(southWest, northEast); 

    var map = L.map('map', { 
     center: [52.5279664, 13.32686126] 
     , maxBounds: bounds 
     , zoom: 14 
     , maxZoom: 20 
     , minZoom: 14 
    }); 

    map.fitBounds(bounds); 


    var layers = { 
     Streets: L.mapbox.tileLayer('svpvertex.ml8nijl4') 
     , Imagery: L.mapbox.tileLayer('svpvertex.m0ammo9e') 
    }; 

    layers.Streets.addTo(map); 

    //add cartoDB layer, set z-index so it shows up on top 
    cartodb.createLayer(map, 'My CartoDB access').addTo(map) 
     .on('done', function (layer) { 
      layer.setZIndex(5); 
      // get sublayer 0 and set the infowindow template 
      var sublayer = layer.getSubLayer(0); 

      sublayer.infowindow.set('template', $('#infowindow_template').html()); 
     }).on('error', function() { 
      console.log("some error occurred"); 
     }); 
</script> 

誰かが私を助けることができれば素晴らしいだろう!

答えて

0

インタラクティブ機能に問題があるようです。

エディタを使用している場合は、インフォウィンドウで必要なフィールドをオンにするか、すべての情報が利用できるようにカスタム情報ウィンドウを設定することを忘れないでください。

名前付きマップを使用している場合は、それらのフィールドをテンプレートの対話性の定義に追加します。

関連する問題