قائمة باستخدام جافاسكريبت، جاهزة لكن من مشكلة بسيطة
السلام عليكم ورحمة الله وبركاته
هي المرفقات مشروع صغير عن كيفية استخدام قائمة في الجافاسكريبت....
المشروع يتكون من صفحة رئيسية اسمها index تكون مخزنة على الدليل الجذر للموقع root
بالاضافة إلى الصفحات الاخرى الداخلية (في هذا المثال صفحتان) وتكونان محفوظتان في مجلد texts
أيضا هناك ملفا الجافاسكريبت موجودان في المجلد root
لنبدأ في تجربة المثال لنكتشف المشكلة
أولا نشغل الصفحة Index فتعمل بشكل جيد وتظهر القائمة
من القائمة نختار الصفحات ثم الصفحة 1 فتظهر الصفحة المسماة page1
الان نختار من القائمة الصفحات ثم الصفحة 2 فتظهر مشكلة File not found
نرجع الى الخلف مرتين باستخدم المتصفح لنعود للصفحة الرئيسية ونختار من القائمة الصفحات ثم الصفحة 2 فتظهر الصفخة page2
الان أتوقع أن المشكلة قد توضحت لكم....
المشكلة بالضبط هي أنه عندما يتغير المجلد الذي تم تخزين الصفحة عليه فإن الرابط يصبح غير صحيح
للتوضيح أكثر
في الملف menu_array.JS تم تخزين أسماء الصفحات كالتالي:
الصفحة الرئيسية: index.htm
صفحة 1: texts/page1.html
صفحة 2: texts/page2.html
وبالتالي فإنه عندما نضغط على صفحة 1 من القائمة فإن عنوانها صحيح
لكن عندما نصبح داخل صفحة 1 فإن عنوان صفحة 2 هو texts/page2.html وهذا غير صحيح لان عنوان صفحة 1 بالنسبة لصفحة 1 يجب أن يكونpage2.html
أعتقد أن المشكلة قد أصبحت واضحة
يوجد للموضوع حلان وأنا لا أريد استخدامهما
الاول هو عمل نسختين من ملفات الجافاسكريبت، واحد داخل المجلد الذي يحتوي على index والاخر داخل المجلد الذي يحتوي الصفحات الاخرى، والمشكلة ان النسختين ستكونان مختلفتان مما يكلف وقتا وجهدا عند عمل التعديلات، وهذا ليس من أهداف الجافاسكربيت وهذا النوع من القوائم
الحل الاخر هو وضع كل الصفحات ونقلها من المجلد texts إلى المجلد الجذري root وهذا يسبب الفوضى في ترتيب الموقع (تصبح الصفحات غير مرتبة)
طبعا هدفي من هذه القائمة هو استخدامها في موقع موجود حاليا ويحتوي على أكثر من 70 صفحة، كل صفحة تحتوي على عدد من الصور وبالتالي فإن استخدام الحل الثاني هو شيء صعب جدا جدا.....
أريد ممن لديه حل ثالث أن يسعفني به، وأنا في الانتظار
وأعتذر عن الاطالة..........
