شرح عمل إضافة في متصفح كروم من أجل إدارة مهامك (مدير المهام) + رابط ملف الإضافةط¢ط®ط±
ط§ظ„طµظپط­ط©
NEXT LeVeL

  • ط§ظ„ظ…ط´ط§ط±ظƒط§طھ: 45215
    ظ†ظ‚ط§ط· ط§ظ„طھظ…ظٹط²: 37392
أفضل عضو لشهر الماضي بمنتدى الاذاعات
مشرف سابق
NEXT LeVeL

أفضل عضو لشهر الماضي بمنتدى الاذاعات
مشرف سابق
ط§ظ„ظ…ط´ط§ط±ظƒط§طھ: 45215
ظ†ظ‚ط§ط· ط§ظ„طھظ…ظٹط²: 37392
ظ…ط¹ط¯ظ„ ط§ظ„ظ…ط´ط§ط±ظƒط§طھ ظٹظˆظ…ظٹط§: 8
ط§ظ„ط£ظٹط§ظ… ظ…ظ†ط° ط§ظ„ط¥ظ†ط¶ظ…ط§ظ…: 5669
  • 23:43 - 2024/11/13


السلام عليكم ورحمة الله وبركاته
اهلا بكم رواد واعضاء منتدى ستار تايمز
اما بعد :

سنقدم لكم اليوم شرح خاص بعمل إضافة لمتصفح قووقل كروم Google Chrome Extension بشكل سريع وبسيط

الإضافة ستكون وظيفتها وهي مدير المهام (إضافة، تعديل، عرض، حذف المهمات.)

قبل البدأ في الشرح

كل مبتدئ لا يعرف كيف يتم عمل إضافات متصفح قووقل كروم

يجب عليه زيارة هذا الموضوع وبعد ذلك الرجوع لتطبيق درس اليوم

شرح بعض مكونات إضافات متصفح كرووم Chrome Extensions مع مثال بسيط

نبدأ بعمل مجلد جديد نقوم بتسميته (Task Manager)

ونبدأ بالعمل عليه في محرر الأكواد البرمجية

ونقوم بفتح لمفات جديد

manifest.json

popup.html

popup.js

popup.css

وإضافة أيقونة

يمكنك إختيار هذه الصورة لتجربة الامر

icon16.png

المجلد سيكون على الشكل التالي في محرر الأكواد

البداية بالعمل على ملف manifest.json

{ "manifest_version": 3, "name": "Task Manager", "de--SS--ion": "A Chrome extension to manage tasks.", "version": "1.0", "permissions": ["storage"], "action": { "default_popup": "popup.html" }, "icons": { "16": "icon16.png" } }
  1. تم اختيار نسخة التالتة من manifest
  2. تم تسمية الإضافة (Task Manager)
  3. تم منح وصف خاص بها
  4. الإضافة نسخة رقم 1
  5. تم تحديد (Storage) أو التخزين وهي الخاصية الوحيدة التي سنعمل عليها في هذه الإضافة لكي نقوم بتخزين المهام التي سنقوم بإضافتها.

    ويجب فهمها على هذا الشكل … الإضافة تطلب السماح من المتصفح لكي يجعلها تستخدم خاصية تخزين البيانات

    فالعضو رغم حذفه للكوكيز الخاصة بالمتصفح فلن يتم حذف تلك البيانات (المهام التي أضافها العضو)

    يتم حذف المهام تلقائيا عندما يقوم العضو بحذف ملف التخزين أو إزالة تثبيت الإضافة.

  6. كالعادة action وضعنا فيها ملف popup.html الذي ستكون مهمته عرض الكتابة والأماكن التي سيكتب فيها العضو مهماته والأزرار الخاص بحفظ المهمة.
  7. الأيقونة نحدد إسمها في خاصية icons

ملف popup.html

هذا الملف وضعنا فيه عنوان الإضافة وقمنا بوضع input وهي مكان الذي سيكتب فيه العضو املهمة التي يريد إدخالها

بالإضافة الى وضع زر حفظ المهمة

ul الموجود فيها tasklist وهي المكان الذي سيتم عرض فيه كل المهمات التي قمت بإضافتها

ستظهر لك كأنها فارغة لأنه سيتم التعامل معها من خلال ملف popup.js عن طريق الجافاسكريبت

ولذلك تم ربط هذا الملف مع ملف الجافاسكريبت الذي سيقوم بعرض وتخزين المهمات

الملف popup.html سيتعامل مع تلك الأكواد عن طريق الكود الموجود في السطر الأخير --SS--

popup.css

هذا الملف هو المسؤول عن تزيين وتصميم الواجهة الخاصة بالإضافة

قمنا بعمل أكواد تقوم بتزيين الأزرار وتكبير الكتابة والتلاعب بحجم الواجهة

const taskInput = document.getElementById('taskInput'); const addTaskBtn = document.getElementById('addTaskBtn'); const taskList = document.getElementById('taskList'); chrome.storage.local.get('tasks', (result) => { const tasks = result.tasks || []; renderTasks(tasks); }); addTaskBtn.addEventListener('click', () => { const taskText = taskInput.value.trim(); if (taskText) { chrome.storage.local.get('tasks', (result) => { const tasks = result.tasks || []; tasks.push({ text: taskText, completed: false }); chrome.storage.local.set({ tasks }, () => { renderTasks(tasks); taskInput.value = ''; // Clear input field }); }); } }); function renderTasks(tasks) { taskList.innerHTML = ''; tasks.forEach((task, index) => { const listItem = document.createElement('li'); // Task text const taskSpan = document.createElement('span'); taskSpan.textContent = task.text; taskSpan.style.textDecoration = task.completed ? 'line-through' : 'none'; taskSpan.addEventListener('click', () => toggleComplete(index)); // Edit button const editBtn = document.createElement('button'); editBtn.textContent = 'تعديل'; editBtn.classList.add('edit'); editBtn.addEventListener('click', () => editTask(index)); // Delete button const deleteBtn = document.createElement('button'); deleteBtn.textContent = 'حذف'; deleteBtn.classList.add('delete'); deleteBtn.addEventListener('click', () => deleteTask(index)); listItem.appendChild(taskSpan); listItem.appendChild(editBtn); listItem.appendChild(deleteBtn); taskList.appendChild(listItem); }); } function toggleComplete(index) { chrome.storage.local.get('tasks', (result) => { const tasks = result.tasks || []; tasks[index].completed = !tasks[index].completed; chrome.storage.local.set({ tasks }, () => { renderTasks(tasks); }); }); } function editTask(index) { const newTaskText = prompt("تعديل مهمة"); if (newTaskText) { chrome.storage.local.get('tasks', (result) => { const tasks = result.tasks || []; tasks[index].text = newTaskText; chrome.storage.local.set({ tasks }, () => { renderTasks(tasks); }); }); } } function deleteTask(index) { chrome.storage.local.get('tasks', (result) => { const tasks = result.tasks || []; tasks.splice(index, 1); chrome.storage.local.set({ tasks }, () => { renderTasks(tasks); }); }); }

هذا الملف هو الذي يقوم بالتعامل مع كل ماهو يحتاج للبرمجة والامور المنطقية

مثل عرض المهام وحفظها وتعديلها…

قمنا بعمل توابت من اجل الازرار والقائمة التي سنقوم بعرض فيها مهمات

chrome.storage.local.get

وظيفتها هي جلب البيانات من المكان المخصص لتخزين البيانات في متصفح كروم وعرضها لنا في الواجهة

addTaskBtn.addEventListener

وهي خاصة بإضافة المهمات وتخزينها وتقوم بتحديث الواجهة من أجل عرض المهمة في القائمة.

editTask

تقوم بتعديل على المهمة

deleteTask

تقوم بحذف المهمة

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

طريقة تثبيت الإضافة في متصفح كروم ستجدها في هذا الموضوع

لأن سبق وأن شرحت كيف يمكن تثبيت الإضافات…

شرح بعض مكونات إضافات متصفح كرووم Chrome Extensions مع مثال بسيط

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

المجلد سليم ولا يوجد اي فيروسات…

https://drive.google.com/file/d/11UyvvjWWtwKl4p7vGZ3cHV2QZ-UiidxW/

الإضافة مجانية يمكنكم التعديل عليها وتطويرها أكثر مع تعزيز الحماية فيها…

بارك الله فيكم على متابعة الموضوع

نلتقي قريبا ان شاء الله…

1📊1👍0👏0👌0🧠
FayCaLMegris

  • ط§ظ„ظ…ط´ط§ط±ظƒط§طھ:
    9740
مشرف عالم البرمجة وملحقاتها
FayCaLMegris

مشرف عالم البرمجة وملحقاتها
ط§ظ„ظ…ط´ط§ط±ظƒط§طھ: 9740
ظ…ط¹ط¯ظ„ ط§ظ„ظ…ط´ط§ط±ظƒط§طھ ظٹظˆظ…ظٹط§: 2.8
ط§ظ„ط£ظٹط§ظ… ظ…ظ†ط° ط§ظ„ط¥ظ†ط¶ظ…ط§ظ…: 3491
  • 23:56 - 2024/11/13
برمجة الإضافات للمتصفحات

في يوم من الأيام راودني سؤال

كيف تبرمج مثل هاته الإضافات وأري ان الأمر

سهل فقط فقط الممارسة الله يجازيك كل خير وجعلها في ميزان ⚖️ حسناتك

0📊0👍0👏0👌0🧠
NEXT LeVeL

  • ط§ظ„ظ…ط´ط§ط±ظƒط§طھ: 45215
    ظ†ظ‚ط§ط· ط§ظ„طھظ…ظٹط²: 37392
أفضل عضو لشهر الماضي بمنتدى الاذاعات
مشرف سابق
NEXT LeVeL

أفضل عضو لشهر الماضي بمنتدى الاذاعات
مشرف سابق
ط§ظ„ظ…ط´ط§ط±ظƒط§طھ: 45215
ظ†ظ‚ط§ط· ط§ظ„طھظ…ظٹط²: 37392
ظ…ط¹ط¯ظ„ ط§ظ„ظ…ط´ط§ط±ظƒط§طھ ظٹظˆظ…ظٹط§: 8
ط§ظ„ط£ظٹط§ظ… ظ…ظ†ط° ط§ظ„ط¥ظ†ط¶ظ…ط§ظ…: 5669
  • 01:43 - 2024/11/14
تسلم أخي على المتابعة
نعم بما أنك تعرف كيف تبرمج
فالأمر سيكون سهل يكفي فقط معرفة أساسيات المجال والباقي يرجع لك بإبداعات وحلول جديدة
برمجة الإضافة رائعة جدا لأنك ستحتاج كثيرا للإستعمال الشخصي تساعدك في عمل عدة امور لنفسك قبل أن تفكر أنك تعملها للعموم
اذا كان لديك موقع أو منصة ما ولديك تطبيق خاص بها... ستتمكن أيضا من عمل لها إضافة خاصة بها ولهذا يجب تعلم كيفية تطوير الإضافات
1📊1👍0👏0👌0🧠
ا أبوشهاب ا

  • ط§ظ„ظ…ط´ط§ط±ظƒط§طھ:
    49733
مشرف عالم البرمجة وملحقاتها
مشرف مشاكل الحاسب والشبكات
مشرف عالم التوظيف والبحث عن عمل
ا أبوشهاب ا

مشرف عالم البرمجة وملحقاتها
مشرف مشاكل الحاسب والشبكات
مشرف عالم التوظيف والبحث عن عمل
ط§ظ„ظ…ط´ط§ط±ظƒط§طھ: 49733
ظ…ط¹ط¯ظ„ ط§ظ„ظ…ط´ط§ط±ظƒط§طھ ظٹظˆظ…ظٹط§: 7.4
ط§ظ„ط£ظٹط§ظ… ظ…ظ†ط° ط§ظ„ط¥ظ†ط¶ظ…ط§ظ…: 6706
  • 14:24 - 2024/11/14
السلام عليكم ورحمة الله وبركاته…

الله عليك اخي اضافة جد ممتازة .. وتسهل على أصحاب المواقع الولوج إلى إدارة مهامك …

عمل راقي ومميز منك ..

بارك الله فيك واحسن اليك ..

واصل تميزك .. بالتوفيق

0📊0👍0👏0👌0🧠
MouNir-T28
  • ط§ظ„ظ…ط´ط§ط±ظƒط§طھ: 977
    ظ†ظ‚ط§ط· ط§ظ„طھظ…ظٹط²: 3862
ط¹ط¶ظˆ ظ†ط´ط·
MouNir-T28
ط¹ط¶ظˆ ظ†ط´ط·
ط§ظ„ظ…ط´ط§ط±ظƒط§طھ: 977
ظ†ظ‚ط§ط· ط§ظ„طھظ…ظٹط²: 3862
ظ…ط¹ط¯ظ„ ط§ظ„ظ…ط´ط§ط±ظƒط§طھ ظٹظˆظ…ظٹط§: 0.3
ط§ظ„ط£ظٹط§ظ… ظ…ظ†ط° ط§ظ„ط¥ظ†ط¶ظ…ط§ظ…: 3775
  • 09:44 - 2024/11/21
مفيد جدا. بالتوفيق اخي الفاضل
0📊0👍0👏0👌0🧠
سمو الأمير المغترب
- عضوية مقفولة -
سمو الأمير المغترب
- عضوية مقفولة -
  • 14:45 - 2024/12/19
الســــــلام عليكم ورحمة الله وبركاتة
سلموا الأيادي على جميل طرحك وحسن
الزوق الرفيع يعطيك ربي ألـف عافيه بإنتظار
جديــــــدك بكل شوق. أمنياتــــي لك بدوام التآلّق
والإبداع تقبلوا وافر تحياتي
أخوكم
عبدالصمد
0📊0👍0👏0👌0🧠
dj-xman1

  • ط§ظ„ظ…ط´ط§ط±ظƒط§طھ: 7451
    ظ†ظ‚ط§ط· ط§ظ„طھظ…ظٹط²: 1714
ط¹ط¶ظˆ ط£ط³ط§ط³ظٹ
dj-xman1

ط¹ط¶ظˆ ط£ط³ط§ط³ظٹ
ط§ظ„ظ…ط´ط§ط±ظƒط§طھ: 7451
ظ†ظ‚ط§ط· ط§ظ„طھظ…ظٹط²: 1714
ظ…ط¹ط¯ظ„ ط§ظ„ظ…ط´ط§ط±ظƒط§طھ ظٹظˆظ…ظٹط§: 1.2
ط§ظ„ط£ظٹط§ظ… ظ…ظ†ط° ط§ظ„ط¥ظ†ط¶ظ…ط§ظ…: 6028
  • 18:20 - 2024/12/26
شكرا على الشرح
0📊0👍0👏0👌0🧠
أبوأحمد البدراني

  • ط§ظ„ظ…ط´ط§ط±ظƒط§طھ: 5500
    ظ†ظ‚ط§ط· ط§ظ„طھظ…ظٹط²: 3375
ط¹ط¶ظˆ ط£ط³ط§ط³ظٹ
أبوأحمد البدراني

ط¹ط¶ظˆ ط£ط³ط§ط³ظٹ
ط§ظ„ظ…ط´ط§ط±ظƒط§طھ: 5500
ظ†ظ‚ط§ط· ط§ظ„طھظ…ظٹط²: 3375
ظ…ط¹ط¯ظ„ ط§ظ„ظ…ط´ط§ط±ظƒط§طھ ظٹظˆظ…ظٹط§: 0.9
ط§ظ„ط£ظٹط§ظ… ظ…ظ†ط° ط§ظ„ط¥ظ†ط¶ظ…ط§ظ…: 6325
  • 12:25 - 2025/01/16

شكرا جزيلا لك بارك الله فيك

0📊0👍0👏0👌0🧠

ط§ظ„ط±ط¯ ط¹ظ„ظ‰ ط§ظ„ظ…ظˆط§ط¶ظٹط¹ ظ…طھظˆظپط± ظ„ظ„ط£ط¹ط¶ط§ط، ظپظ‚ط·.

ط§ظ„ط±ط¬ط§ط، ط§ظ„ط¯ط®ظˆظ„ ط¨ط¹ط¶ظˆظٹطھظƒ ط£ظˆ ط§ظ„طھط³ط¬ظٹظ„ ط¨ط¹ط¶ظˆظٹط© ط¬ط¯ظٹط¯ط©.

  • ط¥ط³ظ… ط§ظ„ط¹ط¶ظˆظٹط©: 
  • ط§ظ„ظƒظ„ظ…ط© ط§ظ„ط³ط±ظٹط©: 

 شرح عمل إضافة في متصفح كروم من أجل إدارة مهامك (مدير المهام) + رابط ملف الإضافةط¨ط¯ط§ظٹط©
ط§ظ„طµظپط­ط©