传单 javascript - 如何清除标记上的 setTimeout?
leaflet javascript - how to clearTimeout a setTimeout on a marker?
我正在向我的地图添加这样的标记:
map.addLayer(l), setTimeout(function() {
map.removeLayer(l)
}, 1e4),
10 秒后再次删除每个标记。现在我想实现的是,当用户在这 10 秒内点击市场在地图上保持可见的标记时。到目前为止我有:
l.on('click', function(e) {
console.log(e);
console.log(e.layer._leaflet_id);
console.log(l);
clearTimeout(e.layer._leaflet_id);
});
但它现在确实有效。知道如何实现吗?
您需要使用相关ID调用clearTimeout来取消setTimeout。
var myVar;
timeout_init();
function timeout_init() {
myVar = setTimeout(function(){
$('.marker').hide();
},5000);
}
$( ".marker" ).click(function() {
clearTimeout(myVar);
});
我正在向我的地图添加这样的标记:
map.addLayer(l), setTimeout(function() {
map.removeLayer(l)
}, 1e4),
10 秒后再次删除每个标记。现在我想实现的是,当用户在这 10 秒内点击市场在地图上保持可见的标记时。到目前为止我有:
l.on('click', function(e) {
console.log(e);
console.log(e.layer._leaflet_id);
console.log(l);
clearTimeout(e.layer._leaflet_id);
});
但它现在确实有效。知道如何实现吗?
您需要使用相关ID调用clearTimeout来取消setTimeout。
var myVar;
timeout_init();
function timeout_init() {
myVar = setTimeout(function(){
$('.marker').hide();
},5000);
}
$( ".marker" ).click(function() {
clearTimeout(myVar);
});