从带有变量的函数调用javascript的map.setView
我正在运行一个带有表2的django应用程序。然后,我用linkify设置了一个字段,我想通过运行javascript函数来缩放到一个功能。 我在renderd htm中的代码是:从带有变量的函数调用javascript的map.setView,javascript,django,leaflet,Javascript,Django,Leaflet,我正在运行一个带有表2的django应用程序。然后,我用linkify设置了一个字段,我想通过运行javascript函数来缩放到一个功能。 我在renderd htm中的代码是: <div id="map" class="leaflet-container-default"></div> ...... <td ><a href="javascript:onclick=myFunction(7.2
<div id="map" class="leaflet-container-default"></div>
......
<td ><a href="javascript:onclick=myFunction(7.22591038,61.1982749)">Zoom til</a></td>....
<script type="text/javascript">
function myFunction(lat,long) {
map.setView([lat,long], 15);
}
</script>
......
....
函数myFunction(横向、纵向){
地图设置视图([lat,long],15);
}
Django laflet generatet映射脚本,其中定义了映射:
<script>
(function () {
function loadmap() {
var djoptions = {"srid": null, "extent": [[-90, -180], [90, 180]], "fitextent": true, "center": [61.2340642364768, 7.10221073722647], "zoom": 12 },
options = {djoptions: djoptions, initfunc: loadmap,
globals: false, callback: window.map_init},
map = L.Map.djangoMap('map', options);
}
var loadevents = ["load"];
if (loadevents.length === 0) loadmap();
else if (window.addEventListener) for (var i=0; i<loadevents.length; i++) window.addEventListener(loadevents[i], loadmap, false);
else if (window.jQuery) jQuery(window).on(loadevents.join(' '), loadmap);
})();
</script>
(功能(){
函数loadmap(){
var djoptions={“srid”:null,“区段”:[[-90,-180],[90180],“fitextent”:true,“中心”:[61.2340642364768,7.10221073722647],“缩放”:12},
options={djoptions:djoptions,initfunc:loadmap,
globals:false,回调:window.map\u init},
map=L.map.djangoMap('map',选项);
}
var loadevents=[“加载”];
如果(loadevents.length==0)loadmap();
else if(window.addEventListener)for(var i=0;i代码片段中显示的map
变量位于loadmap
函数的内部作用域中。因此,您以后无法再访问它
可能有一种方法可以通过Django传单API检索它
否则,如果您可以在Django单张1之前执行一个脚本,您可以设置一个单张init hook ehich,ehich可以为您提供映射引用。请参见代码段中显示的map
变量位于loadmap
函数的内部范围内。因此,您以后无法再访问它
可能有一种方法可以通过Django传单API检索它
否则,如果您可以在Django传单1之前执行脚本,则可以设置传单初始化钩子。ehich可以为您提供映射引用。请参见问题出在哪里?它不起作用。控制台返回该映射不是函数。您是否定义了映射变量?例如:var map=L.map('mapid')。setView([51.505,-0.09],13)
传单django应用程序生成此映射脚本,如在Post中添加的。问题是什么?它不起作用。控制台返回该映射不是函数。是否定义了映射变量?如:var map=L.map('mapid')。setView([51.505,-0.09],13)
传单django应用程序生成这个地图脚本,就像在postThx中添加的一样,简单的方法是设置一个钩子:-)Thx,简单的方法是设置一个钩子:-)