1

初心者として、最も基本的な例を機能させたいと考えています。だから私はここから地図をダウンロード しましたファイルを調べて、最初で唯一のID'g''admin1'.

だから、私は始めました:

<!DOCTYPE html>
<html>
  <head>
    <link rel="stylesheet" href="map.css" type="text/css" />
    <link rel="stylesheet" href="k.css" type="text/css" />
    <script type="text/javascript" src="/js/script.min.js"></script>
    <script type="text/javascript">
        $script(['/js/jquery.min.js'], 'jquery');
        $script(['/js/raphael-min.js', '/js/kartograph.js', '/js/chroma.min.js'], 'kartograph');
    </script>
</head>

<body>
    <script>
        $script.ready(['jquery','kartograph'], function() {
            $(function() {
                map = $K.map('#map');
                map.loadMap('DEU.svg', function(map) {
                    map.addLayer({ id: "admin1" });
                });
            });
        });
    </script>
    <div id="map"></div>        
</body>
</html>

それは基本的にそれです-何も表示されていません。ファイルの場所を確認し、$script.ready関数の後のすべてが実行されているかどうかを確認しました。すべて問題ありませんが、結果はありません。含めるすべてのファイルを kartograph lib フォルダー (git 上) から取得k.cssし、小さなmap.css

map.css次のようになります。

#map {
width: 900px;
height: 900px;
}
4

2 に答える 2

2

2年後にこれを復活させたことでOPが失望した場合は、心からお詫び申し上げます。私は、この問題で私と同じように唖然としたかもしれない他の人を助けるつもりです.

次のloadMap()機能は私のために働きます:

map.loadMap('DEU.svg', function () {
    map.addLayer("admin1");
});

だから言う必要はないようですmap.addLayer({ id: "admin1" })。次のように、レイヤー名の後にスタイルまたはイベント ハンドラーを追加できます。

map.loadMap('DEU.svg', function () {
    map.addLayer("admin1", {
        styles: {
            stroke: '#aaa',
            fill: '#f6f4f2'
        }
    });
});
于 2014-06-20T21:46:08.200 に答える
0

問題を再現しようとしたところ、Raphaëlがロードされていない可能性があることがわかりました。kartograph.orgからファイルをコピーした場合は、 に変更/js/raphael-min.jsしてみてください/js/raphael.min.js

于 2012-08-17T21:24:09.843 に答える