لقد كنت أجرب أمورًا مختلفة للحصول على مظهر مميز مقارنة بالمواقع الأخرى، وقمت ببناء نافذة منبثقة للمواضيع على غرار فيسبوك. يبدو أنها أسرع في التحميل بالنسبة لي، وتبدو أكثر سلاسة على أجهزة سطح المكتب.
رائع جداً! هل جربته في مواضيع تحتوي على 20 ردًا أو أكثر؟ هذا هو الوقت الذي نحمّل فيه المزيد من “الصفحات” للمنشورات عند التمرير، ووفقاً لتجربتي، يعد ذلك أحد أكبر التعقيدات في هذا النوع من واجهات العرض البديلة
نعم، هذا هو الأمر التالي الذي أحتاج إلى التحقق منه، لكنني كنت أفكر في هذا الأمر، هل له أهمية؟ هذا هو نفس سلوك فيسبوك، حيث يؤدي الرابط المباشر إلى المنشور الفعلي، وإذا تم النقر عليه أثناء التصفح، تظهر نافذة منبثقة.
نعم، لأن النافذة المنبثقة تقوم بتحميل تطبيق موضوعات Discourse العادي داخل إطار iframe بدلاً من عرض نسخة مخصصة من الموضوع. يقوم إطار iframe بإنشاء اتصال خاص به مع MessageBus، وتواصل Discourse التعامل مع تدوّن المنشورات بشكل طبيعي، بما في ذلك تحميل المنشورات الأقدم واستقبال المنشورات الجديدة التي يتم نشرها.
تظل الصفحة الأصلية نشطة أيضاً خلف النافذة المنبثقة، لذا فمن الناحية التقنية، يوجد نسختان من Discourse واتصالان بـ MessageBus أثناء بقاء النافذة المنبثقة مفتوحة. هذا يعمل، على الرغم من أنه أثقل قليلاً من التنفيذ الأصلي الكامل. يؤدي إغلاق النافذة المنبثقة إلى إزالة إطار iframe واتصاله.
لقد انتهيت للتو من النسخة المحمولة وأنا سعيد بالطريقة التي تعمل بها كل شيء، الخطوة التالية هي العثور على طريقة أفضل للقيام بذلك وتقليل سرعة التحميل. هل لدى أي شخص أي اقتراحات؟
بعد إجراء المزيد من الاختبارات، استخدمتُ النسخة غير المعتمدة على JavaScript التي تراها Google، وتُحمّل فوراً داخل النافذة المنبثقة. إذا تمكّنتُ من استخدام محتوى هذه النسخة بطريقة ما، فسيجعل ذلك العملية أسرع بكثير.
سرعة التحميل على الأجهزة المحمولة بطيئة بعض الشيء، وبعد النقر يظهر فقط صفحة فارغة وزر الإغلاق في الزاوية اليمنى العليا، مما يعني أنه قد يتعين عليك الانتظار لفترة طويلة أمام صفحة بيضاء.
هذا ما أعمل عليه الآن في الوقت الحالي، إنه مجرد مفهوم أرغب في تحويله إلى واقع. ومع ذلك، على جهزتي، يتم التحميل في ثانيتين على الهاتف المحمول مع أيقونة التحميل الخاصة بـ Discourse، لذا لست متأكدًا مما يحدث. ربما لأن الخادم موجود في لندن بالمملكة المتحدة ولا يوجد CDN حتى الآن.
الآن تم تحميل المواضيع فوراً في النافذة المنبثقة، والآن أبحث عن طريقة لاستخدام النسخة الأولى من Discourse المحملة للردود وما إلى ذلك. (هذا على خادم الاختبار)
لقد قمت بإيقاف تشغيل هذا على الموقع الرئيسي لأنه يحصل الآن على حركة مرور مع تسجيل الناس، لذلك تم وضعه على خادم اختبار. آمل أن يكون هذا جاهزًا بحلول منتصف أغسطس إذا كان هناك أي شخص مهتم بنافذة منبثقة.