عندما أنقر على رابط يحتوي على مُرساة (Anchor) على سطح المكتب، ينزل المتصفح إلى ذلك الموقع. ومع ذلك، على الهاتف المحمول (أندرويد، فايرفوكس وكروم)، تُزال المرساة من عنوان URL، لذا لا يحدث التمرير إلى ذلك الموقع.
ما أحاول فعله:
لدينا وثيقة إرشادات وأسئلة شائعة طويلة تحتاج إلى ربط بالعناوين. نظرًا لأن Discourse يزيل معاملات id، قمت بإنشاء مكون ثيم بسيط يستخدم سمات البيانات المخصصة في المستهدف في الوثيقة ويستمع إلى المراسي في عنوان URL للتمرير إلى العنصر ذي سمة البيانات المطابقة.
يعمل ذلك على سطح المكتب!
ومع ذلك، على الهاتف المحمول، يبدو أن المراسي تُزال بحيث أنه عند الوصول إلى صفحة الوجهة لا يتم التمرير إلى العنصر الصحيح. وبالطبع مع وثيقة طويلة، يكون الهاتف المحمول هو المكان الذي تحتاج فيه إلى ذلك التنقل أكثر من أي وقت مضى.
الآن، أجد أن المراسي التي ينشئها مكون جدول المحتويات تعمل عند فتحها في رابط جديد. لا يتم إزالتها من عنوان URL وينزل المتصفح إلى المكان الصحيح.
كيف يمكنني جعل هذا يعمل؟
(بثّ: لقد كان محبطًا حقًا محاولة فعل شيء أساسي وجوهري في HTML، وهو وجود مراسي والربط بها. أدرك أنه نظرًا لأن المنشورات هي محتوى من إنشاء المستخدمين، فهناك قضايا أمنية. لكن يبدو أن الحلول المطبقة للحماية من سوء الاستخدام قاسية جدًا وتجعل فعل شيء بسيط جدًا معقدًا للغاية. ومع ذلك، لم يتم اختراق موقعي أبدًا، لذا أعتقد أن هذا شيء إيجابي.)