Javascript Cartodb信息窗口未在地图上显示变量
我正在建立一个社区地图,其中包括一些树坑的位置。地图可以在这里找到。我使用mapbox作为基本地图和cartodb,以包含带有树坑标记的图层 我设法让一个自定义信息窗口运行,但它不会显示我的cartobd数据库中的变量(Javascript Cartodb信息窗口未在地图上显示变量,javascript,leaflet,mapbox,infowindow,cartodb,Javascript,Leaflet,Mapbox,Infowindow,Cartodb,我正在建立一个社区地图,其中包括一些树坑的位置。地图可以在这里找到。我使用mapbox作为基本地图和cartodb,以包含带有树坑标记的图层 我设法让一个自定义信息窗口运行,但它不会显示我的cartobd数据库中的变量({{img}}和{{name}}) 我找不到错误。如果有人能帮我,那就太好了 我将所有mapbox和cartodb css和js都包含在 是“信息”窗口的脚本: <script type="infowindow/html" id="infowindow_template
{{img}}
和{{name}}
)
我找不到错误。如果有人能帮我,那就太好了
我将所有mapbox和cartodb css和js都包含在
是“信息”窗口的脚本:
<script type="infowindow/html" id="infowindow_template">
<div class="cartodb-popup v2">
<a href="#close" class="cartodb-popup-close-button close">x</a>
<div class="cartodb-popup-content-wrapper">
<div class="cartodb-popup-header">
<h1>Baumscheibe</h1>
</div>
<div class="cartodb-popup-content">
<!-- content.data contains the field info -->
<h3>Image:</h3> <img src="{{img}}">
<h3>Gepflegt von: {{name}}</h3>
</div>
</div>
<div class="cartodb-popup-tip-container"></div>
</div>
</script>
鲍姆谢贝
图片:
格普夫列格特·冯:{{name}
这是地图图层的脚本:
<script>
L.mapbox.accessToken = 'My MapBox access code';
var southWest = L.latLng(52.510135, 13.284534)
, northEast = L.latLng(52.559125, 13.400293)
, bounds = L.latLngBounds(southWest, northEast);
var map = L.map('map', {
center: [52.5279664, 13.32686126]
, maxBounds: bounds
, zoom: 14
, maxZoom: 20
, minZoom: 14
});
map.fitBounds(bounds);
var layers = {
Streets: L.mapbox.tileLayer('svpvertex.ml8nijl4')
, Imagery: L.mapbox.tileLayer('svpvertex.m0ammo9e')
};
layers.Streets.addTo(map);
//add cartoDB layer, set z-index so it shows up on top
cartodb.createLayer(map, 'My CartoDB access').addTo(map)
.on('done', function (layer) {
layer.setZIndex(5);
// get sublayer 0 and set the infowindow template
var sublayer = layer.getSubLayer(0);
sublayer.infowindow.set('template', $('#infowindow_template').html());
}).on('error', function () {
console.log("some error occurred");
});
</script>
L.mapbox.accessToken='我的mapbox访问代码';
西南风=L.latLng(52.510135,13.284534)
,东北=L.latLng(52.559125,13.400293)
,边界=L.latLngBounds(西南、东北);
var map=L.map('map'{
中间:[52.5279664,13.32686126]
,maxBounds:bounds
,缩放:14
,maxZoom:20
,minZoom:14
});
映射边界(bounds);
变量层={
街道:L.mapbox.tillelayer('svpvertex.ml8nijl4')
,图像:L.mapbox.tillelayer('svpvertex.m0ammo9e'))
};
图层。街道。添加到(地图);
//添加cartoDB层,设置z索引,使其显示在顶部
createLayer(映射“我的cartodb访问”).addTo(映射)
.on('done',函数(层){
第1层:设置指数(5);
//获取子层0并设置信息窗口模板
var sublayer=layer.getSubLayer(0);
sublayer.infowindow.set('template',$('infowindow_template').html();
}).on('error',function(){
log(“发生了一些错误”);
});
如果有人能帮我,那就太好了 您的互动性似乎有问题 如果您正在使用编辑器,请记住打开infowindow上所需的字段,或者设置自定义infowindow,以便所有字段都可用
如果您使用的是命名地图,请将这些字段添加到模板上的交互性定义。看起来您的交互性有问题 如果您正在使用编辑器,请记住打开infowindow上所需的字段,或者设置自定义infowindow,以便所有字段都可用 如果使用命名贴图,请将这些字段添加到模板上的交互定义中
<script>
L.mapbox.accessToken = 'My MapBox access code';
var southWest = L.latLng(52.510135, 13.284534)
, northEast = L.latLng(52.559125, 13.400293)
, bounds = L.latLngBounds(southWest, northEast);
var map = L.map('map', {
center: [52.5279664, 13.32686126]
, maxBounds: bounds
, zoom: 14
, maxZoom: 20
, minZoom: 14
});
map.fitBounds(bounds);
var layers = {
Streets: L.mapbox.tileLayer('svpvertex.ml8nijl4')
, Imagery: L.mapbox.tileLayer('svpvertex.m0ammo9e')
};
layers.Streets.addTo(map);
//add cartoDB layer, set z-index so it shows up on top
cartodb.createLayer(map, 'My CartoDB access').addTo(map)
.on('done', function (layer) {
layer.setZIndex(5);
// get sublayer 0 and set the infowindow template
var sublayer = layer.getSubLayer(0);
sublayer.infowindow.set('template', $('#infowindow_template').html());
}).on('error', function () {
console.log("some error occurred");
});
</script>