Jquery kartograph.js-非常简单的地图

Jquery kartograph.js-非常简单的地图,jquery,kartograph,Jquery,Kartograph,作为一个初学者,我想学习最基本的例子。 所以我从网上下载了一张地图 查看该文件,发现第一个也是唯一的'g'的id是'admin1' 于是,我开始: <!DOCTYPE html> <html> <head> <link rel="stylesheet" href="map.css" type="text/css" /> <link rel="stylesheet" href="k.css" type="text/css"

作为一个初学者,我想学习最基本的例子。 所以我从网上下载了一张地图 查看该文件,发现第一个也是唯一的
'g'
的id是
'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>

当我试图重现你的问题时,我发现可能没有加载。如果您从中复制了这些文件,请尝试将
/js/raphael-min.js
更改为。

如果我在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'
        }
    });
});

@哦,我忽略了。但我发现了一个可能的打字错误。请查看编辑后的答案。您能告诉我是哪个工具创建了这个SVG吗?谢谢。值得注意的是Google Chrome不会加载您的SVG。不过Firefox运行良好。
map.loadMap('DEU.svg', function () {
    map.addLayer("admin1", {
        styles: {
            stroke: '#aaa',
            fill: '#f6f4f2'
        }
    });
});