简体   繁体   English

函数未定义错误javascript?

[英]function is not defined error javascript?

I am trying to generate a very simple map using kartograph.js. 我正在尝试使用kartograph.js生成一个非常简单的地图。 But some how my code is not working. 但是有些我的代码不起作用。 I looked at it in web developers tools and it gives the 我在网络开发人员工具中对其进行了研究,

error: Uncaught RefrenceError: loadmap is not defined 错误:未捕获RefrenceError:未定义loadmap

    <html>
<head>
     <script src="jquery-1.8.3.min.js"></script>
     <script src="raphael-min.js"></script>
     <script src="kartograph.min.js"></script>


<!---starting karograph.js-->   

    <script language="JavaScript">
function loadmap(){
var map = Kartograph.map('#map', 900, 0);

map.loadmap('map.svg', function() {
    // add layers.
        map.addLayer('countries');
        map.addLayer('depth');
        map.addLayer('trees');
        map.addLayer('crops');
        map.addLayer('rivers');
        map.addLayer('canals');
        map.addLayer('city');
        map.addLayer('states');
        map.addLayer('coast');
        map.addLayer('coast');
});
}
</script>
</head>
<body onLoad = "loadmap()">
<div id = "map">
</div>
</body>
</html>

Couple things: 几件事情:

Try not to use the same function names, it will make debugging easier (though it would technically work in this case). 尽量不要使用相同的函数名,这会使调试更加容易(尽管在技术上可以在这种情况下运行)。

map.loadmap should be map.loadMap http://kartograph.org/docs/kartograph.js/ map.loadmap应该是map.loadMap http://kartograph.org/docs/kartograph.js/

Try this: 尝试这个:

$(document).ready(function () {

var map = Kartograph.map('#map', 900, 0);

map.loadMap('map.svg', function() {

    // add layers.
        map.addLayer('countries');
        map.addLayer('depth');
        map.addLayer('trees');
        map.addLayer('crops');
        map.addLayer('rivers');
        map.addLayer('canals');
        map.addLayer('city');
        map.addLayer('states');
        map.addLayer('coast');
        map.addLayer('coast');
});
});

And remove onLoad from body. 并从主体上移除onLoad。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM