如何在传单中刷新javascript地图
javascript map in leaflet how to refresh
我使用传单API用javascript编写了一个基本的geoJson程序。
<html>
<head>
<link rel="stylesheet" href="http://cdn.leafletjs.com/leaflet-0.6.4/leaflet.css" />
<script src="http://cdn.leafletjs.com/leaflet-0.6.4/leaflet.js"></script>
<script src="india.js" type="text/javascript"></script>
</head>
<body>
<div id = "map1" style="width: 1100px; height: 400px"> </div>
<script>
var area = L.map('map1', {center: [27.8800,78.0800], zoom: 4 });
L.tileLayer('http://a.tiles.mapbox.com/v3/raj333.map-gugr5h08/{z}/{x}/{y}.png').addTo(area);
var indiaLayer= L.geoJson(india, {style: {weight: 2,
opacity: 1,
color: 'white',
dashArray: '3',
fillOpacity: 0.1}});
area.addLayer(indiaLayer);
function clicked(){
this.options.style.fillOpacity = 0.8;
//how to refresh layer in the given map
}
indiaLayer.on('click', clicked);
</script>
</body>
</html>
问题是我如何自动刷新地图上图层的内容。
示例
function clicked(){
indiaLayer.style.fillOpacity = 0.8;
//how to refresh layer in the given map
}
indiaLayer.on('click', clicked);
当用户点击indiaLayer时,fillOpacity变量会发生变化,但不会反映回地图上,这是可以理解的,因为我没有刷新地图。我不知道怎么做。
请帮助
p/s:这些是indiaLayer对象上可用的函数(即点击函数中的这个对象……哪个用于此目的,或者不存在)
您可以在传单文档中查看GEOJson的可用方法列表。这是v.0.7.7的链接,它是本例中最接近的可用方法。
上次我使用
map._onResize();
这有助于我刷新地图。也许是一个小黑客,但是,它工作。
在您的代码中将是区域_onResize()
p.S:也许你应该尝试改变设置新不透明度值的方式——尝试改变
function clicked(){
this.options.style.fillOpacity = 0.8;
}
到
function clicked(){
this.setStyle({fillOpacity: 0.2});
}
map.invalidateSize();
map._onResize()
-这是一个黑客攻击,不能保证它在未来的版本中不会被删除。
area.fitBounds(area.getBounds());
相关文章:
- 刷新 JavaScript 中的素数 gmap 标记
- 重新初始化全局变量,而不刷新 javascript 中的页面
- 在输入字段更改时刷新 Javascript 变量
- 组合框在提交更改时给出结果,但刷新 JavaScript 设置
- 如何在刷新 Javascript 时停止此功能
- 如何在传单中刷新javascript地图
- 自动刷新JavaScript功能在一段时间后停止工作
- 刷新javascript而不重新加载页面
- 随机数游戏刷新Javascript
- 在页面上刷新Javascript而不刷新HTML
- 刷新Javascript以从Flask获取新值
- SharePoint web部件自动刷新javascript事件
- jQuery:如何在选择事件时刷新javascript值
- 刷新javascript代码,在autopostback下拉列表之后
- 刷新javascript页面而不刷新HTML,而是作为窗口'宽度变化
- 从Perl创建HTML页面,包括Javascript:刷新Javascript变量
- 自动刷新javascript无需加载整个页面
- 刷新Javascript和检索到的PHP变量
- 刷新Javascript变量而不重新加载页面
- 在MVC 4的Razor视图中,3秒后刷新JavaScript和Ajax调用控制器,无需任何点击