为什么我不能通过调用setMap(null)来删除方向?
Why can't I delete directions by calling setMap(null)?
我必须像这样画多个方向:
A->B B->C C->D
在同一张地图上
这个工作很好,但是当我试图删除B->C时,方向仍然在地图上。
要画一个方向,我这样做:
directionsDisplay = new google.maps.DirectionsRenderer({
suppressMarkers: true,
polylineOptions: polylineOptionsActual,
preserveViewport: true
});
createItinerary : function(eventA, eventB, transportationMode, counter)
{
if (eventDate.getDate() == currentDay.getDate())
directionsDisplay.setDirections(result);
}
然后,每次我删除一条路,我打电话给
if (directionsDisplay != null)
{
directionsDisplay.setMap(null);
directionsDisplay = null;
}
我可以随时调用它,即使directionDisplay为null,方向也不会被移除。
只有当我有多个方向时才会出现这个错误。
你知道哪里出了问题吗?
是的,你有directionsDisplay = new google.maps.DirectionsRenderer…在循环中。你要做的是,将变量存储在数组中。
示例(我假设有for循环):
var directionsDisplayArray = [];
for(var i in data) {
directionsDisplay = new google.maps.DirectionsRenderer({
suppressMarkers: true,
polylineOptions: polylineOptionsActual,
preserveViewport: true
});
directionsDisplayArray.push(directionsDisplay);
}
然后可以在循环中删除这些显示
for(var i in directionsDisplayArray) {
directionsDisplayArray[i].setMap(null);
}
相关文章:
- 删除'为Null'和'不为Null'来自Kendo Filters
- 类型错误:无法读取属性'行'使用javascript删除行时为null
- 如何删除此JavaScript null错误
- 当请求时,我如何从文本区域删除null.GetAttribute为null,以及如何从servlet修改标签的可见性
- 如何从javascript对象中删除null值
- 如何删除javascript中的节点,而不需要父节点为null
- 如何删除“;NULL”;使用Javascript从sails.js中的JSON对象中提取字符串
- 从JSON数组中删除行将留下'null'
- setVisible(false)删除标记,但不删除setMap(null)
- 从JavaScript对象中递归删除null值
- 我在哪里删除forEach循环/函数中的null元素
- IE9无法获取属性'删除'的未定义引用或null引用
- 删除、忽略或阻止IE中字符串中的null字符
- 从JSON对象中删除jQuery和null对象
- 删除属性或将其设置为null
- 正在删除值为NULL的cookie
- jQuery IF语句,它查找所有具有null值的输入并删除相应的元素
- 只有当数据为数字或null时,才会触发删除GridView中的行时使用数据进行确认
- Knockout, collection属性变为null,当我尝试从其中删除一个项目时,如果其中有多个项目
- 删除$.ajaxPOST的javascript中的null值