2017-02-23 4 views
0

これは明らかな質問ですが、それは私の悩みの種です。私はそれをどのようにデバッグするのかよく分かりません。おそらく私のjavascriptの無知。リーフレットUTFグリッドを使用したJavascriptイベントハンドラ

私はここからリーフレットutfgridスクリプトを使用しています:https://github.com/danzel/Leaflet.utfgrid

私はほとんどちょうどサンプルスクリプトを以下のよ、と私は、イベントハンドラを動作させることはできません。この時点で、私は非常に基本的なスクリプトであると信じているものを得ました。ここにコードがあります - コンソールにログするutfGrid.on( 'クリック')関数を取得しようとしていますが、そうではありません。私はフィードバックのための助けを感謝します。

<head> 
    <meta charset="UTF-8"> 
    <title>Leaflet Test</title> 

    <link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/leaflet.css" /> 
    <script src="https://unpkg.com/[email protected]/dist/leaflet.js"></script> 
    <script src="http://danzel.github.io/Leaflet.utfgrid/src/leaflet.utfgrid.js"></script> 
    <style> 
     #map{ width: auto; height: 800px; } 
    </style> 

</head> 
<body> 
    Map Data Test 
    <div id ="hover"></div> 
    <div id="map"></div> 

    <script> 

     // load a tile layer 
     var basemap = L.tileLayer('http://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png', {attribution: 'CartoDB.', maxZoom: 18, minZoom: 2}); 
     var cmamap = L.tileLayer('http://localhost:8080/tiles/{z}/{x}/{y}.png'); 
     var utfGrid = new L.UtfGrid('http://localhost:8080/grid/{z}/{x}/{y}.json'); 

     //event data 

     utfGrid.on('click', function (e) { 
      console.log('clicked'); 
     }); 

     //Create our map with just the base TileLayer 

     var map = L.map('map') 
      .setView([38, -94], 5) 
      .addLayer(basemap); 

     //Set up the base map and interactive stuff 
     var cmaLayers = L.layerGroup([ 
      cmamap, 
      utfGrid 
     ]).addTo(map); 


    </script> 

</body> 

答えて

2

これは、リーフレットプラグインとleaflet.utfgridの間のバージョンの問題のようです。私がリーフレットの古いバージョンを使用する - それは動作します。

関連する問題