gpt4 book ai didi

javascript - 为什么我需要点击两次才能运行一个功能?

转载 作者:行者123 更新时间:2023-11-30 19:59:25 26 4
gpt4 key购买 nike

我正在使用传单 map ,我在上面画了一些标记,当我点击一个圆圈时,我运行一个提交表单。这是我正在使用的以下代码。

JS

    // We draw the markers
function drawMarkers() {

if(stopAjax == false) {
L.MarkerCluster.include({
spiderfy: function(e) {
var childMarkers = this.getAllChildMarkers();
this._group._unspiderfy();
this._group._spiderfied = this;
if(childMarkers.length == 2) {
clickMarkers();
}
},
unspiderfy: function() {
this._group._spiderfied = null;
}
});

var mcg = L.markerClusterGroup().addTo(map);
circles = new L.MarkerClusterGroup();

map.on("zoomend", function(){
zoomLev = map.getZoom();
console.log(zoomLev);
if (zoomLev == 11){
clickMarkers();
}
});

function clickMarkers() {
console.log("hello");
circles.on('clusterclick', function (e) {
$("#longiTude").val(e.latlng.lng);
$("#latiTude").val(e.latlng.lat);
submitSearchForm();
},this);
}

for (var i = 0; i < coords.length; i++) {
var circle = new L.CircleMarker(coords[i].split(','))
circles.addLayer(circle);
circle.on('click', function (e) {
var curPos = e.target.getLatLng();
$("#longiTude").val(curPos.lng);
$("#latiTude").val(curPos.lat);
submitSearchForm();
});
}
// we add the markers to the map
map.addLayer(circles);
// we empty the arrays for the future calls
coords = [];
// we set again stopAjax var to true to reset
stopAjax = true;
}
}

但是在点击功能上,我需要点击两次才能提交表单。奇怪的是 console.log() 在第一次点击时发生

        function clickMarkers() {
console.log("hello");
circles.on('clusterclick', function (e) {
$("#longiTude").val(e.latlng.lng);
$("#latiTude").val(e.latlng.lat);
submitSearchForm();
},this);
}

最佳答案

通过删除解决了

function clickMarkers() {
circles.on('clusterclick', function (e) {
$("#longiTude").val(e.latlng.lng);
$("#latiTude").val(e.latlng.lat);
submitSearchForm();
},this);
}

并替换

        if(childMarkers.length == 2) {
clickMarkers();
}

if(childMarkers.length == 2) {
submitSearchForm();
}

关于javascript - 为什么我需要点击两次才能运行一个功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53557559/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com