سؤال

أحاول لف رأسي حول jQuery Mobile. هدفي هو بناء تطبيق سريع للغاية مع نظرة ومظهر أقرب ما يمكن إلى تطبيق أصلي (على الأقل للأجهزة الحديثة).

أفهم أن هناك طريقتان للتنقل بين الصفحات:

  1. قم بتحميل كل صفحة كصفحة منفصلة وربط صفحات أخرى مع مراسي HTML العادية.

  2. وضع جميع الصفحات (أو كثيرة) على صفحة ويب واحدة والتنقل بينها عن طريق JavaScript ($ .mobile.ChangePage (الطريقة) ووظائف API مماثلة.

يجب أن يعمل النهج الأول على جميع المتصفحات ، ولكنه يؤدي بشكل سيء للغاية نظرًا لوجود تأخير بين كل صفحة انتقال.

والثاني يبدو أنه يجب أن يكون أسرع بكثير ، لذلك أنا بالتأكيد أفضل هذا النهج. ولكن كيف يعمل هذا لمتصفحات الأجهزة المحمولة دون دعم JavaScript؟ من المؤكد أنه يبدو أنه ينتهك هدف JQuery Mobile في توفير تجربة متدهورة بأمان لمتصفحات الدرجة C.

يبدو لي وكأنني بحاجة إلى تنفيذ تطبيقي مرتين ، بمجرد تحسين المتصفحات مع دعم JavaScript ، مرة واحدة للمستعرضات بدون؟ قد يكون استخدام خيار آخر ، لكن هذا يبدو أكثر فوضى.

ما هي الطريقة الموصى بها للتعامل مع هذه المعضلة؟ هل هناك أي شيء لم ألاحظه؟

شكرًا،

أدريان

هل كانت مفيدة؟

المحلول

بادئ ذي بدء: point2 الخاص بك خطأ.

نرى "الصفحات" المحلية المرتبطة هنا وقراءتها بعناية. رابط href="#pageelementid" سيعمل بشكل جيد وسيعمل في أي متصفح قادر على HTML4 أيضًا [قد يتطلب ذلك <a name="pageelementid"> في بعض الحالات ، لم أعد متأكدًا من الفرق الوحيد هو أن جميع الصفحات مرئية في وقت واحد.

الشيء الثاني هو أنه إذا كنت تستخدم الطريقة رقم 1 ، فسيبدو لطيفًا جدًا أيضًا. سيتم تحميله ، نعم ، ولكن في المتصفحات التي تدعم JavaScript ، يتم تحميلها مع Ajax ولا يوجد وميض سيء بين الصفحات. أيضا - تظهر "تحميل" منبثقة.

من المفترض أن يتيح لك JQuery Mobile إنشاء تطبيق مع بعض HTML النقي والبسيط دون أي JS. يأخذ JQM نفسه تعزيز الصفحة بحيث تبدو جيدة وتستخدم AJAX. حاول إنشاء تطبيق من شأنه أن يعمل في كل متصفح ممكن (إلهامي: Lynx) واستخدام علامة JQM لذلك. يجب أن تعمل أي جافا سكريبت التي ترغب في كتابتها كتحسين - مما يجعله أفضل بدلاً من جعله يعمل على الإطلاق.

حظا جيدا في ذلك!

نصائح أخرى

التفكير الحالي في دعم المتصفحات الأقل هو عدم التدهور بأمان ، ولكن لتعزيز. إذا قمت بإنشاء موقع الويب من الألف إلى الياء إلى العمل بدون JavaScript ، فقم بتحسينه بعد ذلك ، فأنت تعلم أن الموقع سيعمل (بدلاً من الاضطرار إلى ذلك يصلح انها أو بناء موقع ثانوي).

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

قد يبدو جمع جميع الصفحات في ملف كبير فكرة جيدة (تم تنزيله بالفعل) ، ولكن قد تواجه قيودًا على الذاكرة على بعض الهواتف. وماذا لو كان كل ما يريدون القيام به هو زيارة صفحتين ، لماذا يجب إجبارهم على تنزيل موقع الويب بأكمله للقيام بذلك؟

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top