वर्तमान में हम gmaps के साथ एक पुस्तिका-प्रोजेक्ट पर काम कर रहे हैं और मुझे एक छोटी सी समस्या है।मैं मार्कर पॉपअप फिट करने के लिए मानचित्र खींचने से लीफलेट को कैसे रोक सकता हूं?
एकाधिक मार्कर जोड़ने के बाद (प्रत्येक पॉपअप के साथ) हम उन्हें सभी खोलना चाहते हैं।
इसलिए मैं कोड की शांति निम्नलिखित का उपयोग कर ऐसा करने के लिए:
L.Map = L.Map.extend({
openPopup: function(popup) {
// this.closePopup();
this._popup = popup;
return this.addLayer(popup).fire('popupopen', {
popup: this._popup
});
}
});
pageload पर सब कुछ उम्मीद के रूप में काम करता है। pageload
उपयोगकर्ता zooms in
बाद
और कुछ मार्करों उपयोगकर्ता की out of the “view area”
हैं:
लेकिन यहाँ असफल परिदृश्य आता है।
कुछ सेकंड बाद, वेबसाइट new position data
(मार्करों के लिए) using a rest interface
लोड करती है।
स्थिति डेटा प्रसारित करने के बाद, मैं वर्तमान में सभी मार्करों को हटा देता हूं और उन्हें प्रेषित स्थितियों पर पुनर्निर्मित करता हूं और उन्हें खोलता हूं।
और यह marker.openPopup()
ट्रिगर, map moves
ताकि popup fits in the “view area” of the user
।
इस मामले में मैं prevent leaflet to drag the map
कैसे कर सकता हूं?
OMG ... मैं हमेशा it'sa बग, जो 'openAllPopUp' द्वारा प्रेरित किया गया था सोच रहा था -Hack। पॉपअप-ऑब्जेक्ट में कभी भी एक साधारण विकल्प के बारे में सोचा नहीं .. धन्यवाद yoU! – gies0r