أكثر

كيفية الاحتفاظ بتلميحات المنشورات داخل عرض الخريطة المرئي

كيفية الاحتفاظ بتلميحات المنشورات داخل عرض الخريطة المرئي


لدي خريطة مع تعطيل التحريك والتكبير / التصغير ، مما يؤدي إلى إنشاء مربع إحاطة. تحتوي هذه الخريطة على طبقة جغرافية مع ميزات وتلميحات أدوات تعرض البيانات الأساسية.

تكمن المشكلة في أنه عندما يقوم المستخدم بالماوس فوق المعالم الموجودة على الحواف الخارجية لمنطقة الخريطة المرئية ، فإن تلميحات الأدوات تكون خارج عرض div. نظرًا لعدم تمكين التحريك ، يكون المستخدم هو الشخص الوحيد الذي يمكنه رؤية الطرف.

كيف يمكنني إبقاء التلميحات ضمن عرض الخريطة المرئي ملزمة بالنطاقات؟


ألق نظرة على KeepViewخيار الطبقة المنبثقة. تخميني هو عندما تضبطه علىحقيقيةبدلا من الافتراضيخاطئةسيحافظ على تلميح الأداة / النافذة المنبثقة مرئيًا داخل نطاق الخريطة الحالي.

ومع ذلك ، إذا كان بإمكانك نشر الكود الذي تعمل عليه في كمان ، فسيكون من المفيد اختبار ما إذا كان افتراضي صحيحًا.


لدي حالة مماثلة حيث لا يمكن للمستخدم التحريك أو التكبير ، ولكن لا يزال منبثقًا مفتوحًا.

بمجرد أن تقوم بتكبير البيانات ، يمكنك القيام بشيء مثل هذا:

var defaultBounds = map.getBounds () ،

ثم عند فتح نافذة منبثقة ، دع الانتقال الافتراضي للنوافذ المنبثقة يمر (قد يتم تحريك الخريطة إذا كانت النافذة المنبثقة خارج منفذ العرض) ، وبعد ذلك ، عند إغلاق النافذة المنبثقة

map.on ("popupclose"، function () {this.fitBounds (defaultBounds)؛ // أو yourLayer.getBounds () إذا كنت لا تريد الاعتماد على "static" var} ، map) ؛

هذا سوف يعود إلى المدى الأصلي. أذهب معها وهو بخير نوعًا ما.


لجعل النوافذ المنبثقة تظهر في نفس الموضع في كل مرة

أنا أستخدم ما يلي CSS حل لإصلاح النافذة المنبثقة تظهر دائمًا في نفس المكان حيث أريدها

ثم لمنع الخريطة من التحرك في كل مرة تنقر فيها على علامة ، قم بتعيينلعموم السياراتإلى false في الخيارات المنبثقة (https://leafletjs.com/reference-1.6.0.html#popup-autopan):

{autoPan: خطأ}

شاهد الفيديو: طريقة ترجمة منشورات الفيسبوك الى اللغة التي تريد بشكل تلقائي