ذاكرة تخزين مؤقت فعّالة للخطوط باستخدام عمال الخدمة

2025-09-04

تُظهر هذه المقتطفات البرمجية كيف يقوم عامل الخدمة بتخزين موارد الخطوط بكفاءة في ذاكرة التخزين المؤقت. يستخدم `CacheStorage` لتخزين الخطوط في ذاكرة التخزين المؤقت ويتضمن آلية ترقيم الإصدارات لمنع تداخل ذاكرة التخزين المؤقت القديمة. عندما يتم طلب خط، يقوم عامل الخدمة أولاً بفحص ذاكرة التخزين المؤقت؛ إذا كانت هناك تطابقة، فإنه يعيد الخط مباشرةً؛ وإلا، فإنه يسترد الخط من الشبكة ويضيفه إلى ذاكرة التخزين المؤقت، مع معالجة أخطاء طلب الشبكة أثناء العملية. تستخدم التعليمات البرمجية بذكاء طريقة `clone()` لتجنب مشكلات استهلاك الموارد.

اقرأ المزيد
التطوير عامل الخدمة

إتقان عنصر HTML `<template>`: Shadow DOM التصريحي وحيل DocumentFragment

2025-09-03

تتناول هذه المقالة بإسهاب القدرات القوية لعنصر HTML ``، مع التركيز على استخدامه مع سمة `shadowrootmode` لإنشاء Shadow DOM تصريحي. تشرح بالتفصيل قيم `open` و `closed` لـ `shadowrootmode`، واستخدام سمات مثل `shadowrootclonable`، و `shadowrootdelegatesfocus`، و `shadowrootserializable`. علاوة على ذلك، توضح المقالة كيفية معالجة DocumentFragment باستخدام خاصية `content` لعنصر ``، وتجنب المشكلات المحتملة مع DocumentFragment بذكاء. من خلال أمثلة رمزية ملموسة، تُظهر كيفية إدراج عناصر DOM وتحديثها ديناميكيًا، وكيفية الاستفادة من Shadow DOM لعزل الأنماط والتنمية القائمة على المكونات.

اقرأ المزيد
التطوير قالب HTML

الـ Debouncing في البرمجة: معالجة فعالة لإدخال المستخدم

2025-08-07
الـ Debouncing في البرمجة: معالجة فعالة لإدخال المستخدم

في البرمجة، يُعدّ الـ Debouncing تقنية تُستخدم لمعالجة الأحداث المتكررة، مثل إدخال المستخدم المتواصل. فهو يتجاهل العمليات التي تحدث قريبة جدًا من بعضها البعض خلال فترة زمنية محددة، ويُدمجها في استدعاء واحد لتجنب بطء واجهة المستخدم. على سبيل المثال، عندما يُدخل المستخدم استعلام بحث، ينتظر الـ Debouncing فترة توقف قبل تنفيذ البحث، مما يُحسّن من الكفاءة وتجربة المستخدم. يشبه ذلك تقنية Throttling، لكن على عكسها التي تحد من تردد العمليات المتواصلة، ينتظر الـ Debouncing فترة من الخمول قبل أن يعمل.

اقرأ المزيد

عيد ميلاد MDN: كعكات، تعاون، ومجتمع

2025-07-25
عيد ميلاد MDN: كعكات، تعاون، ومجتمع

في عالم الويب، يعد تبادل الكعك للاحتفال بالمعالم البارزة تقليدًا ثمينًا بين صناع المتصفحات. أرسلت مايكروسوفت كعكات إلى موزيلا لإصدارات فايرفوكس، والآن قدم موقع web.dev كعكة عيد ميلاد إلى MDN، معترفًا بمساهمة MDN الكبيرة في مجتمع المطورين العالمي. يصل MDN إلى ملايين المطورين شهريًا ويضم أكثر من 100000 مساهم، ويعرب MDN عن امتنانه لمجتمعه المتحمس، متطلعًا إلى 20 عامًا إضافية من تمكين المطورين وبناء شبكة أفضل معًا.

اقرأ المزيد

CSS Paint Worklet: تخصيص صور الخلفية

2025-05-26
CSS Paint Worklet: تخصيص صور الخلفية

يوضح هذا المثال كيفية إنشاء صور خلفية ديناميكية باستخدام CSS Paint Worklet. من خلال تعريف الخصائص المخصصة `--boxColor` و `--widthSubtractor`، واستخدام مُحدد CSS `nth-of-type`، نقوم بإنشاء صور خلفية بألوان وعرض مختلفين لعناصر القائمة. يقوم JavaScript بتسجيل نص برمجي خارجي لـ Paint Worklet، وهو `boxbg.js`، والذي يحتوي على منطق رسم الخلفية. والنتيجة النهائية قابلة للتخصيص؛ قم بتغيير قيم الخصائص المخصصة في أدوات المطور لتغيير الألوان والعرض.

اقرأ المزيد
التطوير خلفية مخصصة

إزالة مستويات العناوين الضمنية في HTML

2025-04-11
إزالة مستويات العناوين الضمنية في HTML

حددت مواصفات HTML سابقًا خوارزمية مخطط تحدد ضمنيًا مستوى العنوان الدلالي لعناصر

بناءً على التعشيش داخل عناصر الأقسام (, , , ). عرضت المتصفحات section > h1 بنفس حجم الخط والهوامش مثل

، و section > section > h1 كـ

، وهكذا. كان هذا العرض الافتراضي في أوراق أنماط UA للمتصفح، ولكن ليس في شجرة إمكانية الوصول (التي يستخدمها قارئات الشاشة). رأت مواقع الويب التي تستخدم عناصر الأقسام هذه المستويات من العناوين التي تم إنشاؤها تلقائيًا بشكل غير متوقع. تسبب هذا في حدوث ارتباك بشأن استخدام

، ومعالجة الأدوات غير المتناسقة، وتم اعتبار الخوارزمية إشكالية. تم إزالة الخوارزمية في عام 2022، لكن قواعد أوراق أنماط UA ظلت كما هي. الآن، يقوم موردو المتصفحات بإزالة هذه الأنماط الافتراضية.

اقرأ المزيد
تطوير

التحكم العالمي في الخصوصية (GPC): حل لمشكلة تتبع الويب؟

2025-03-16
التحكم العالمي في الخصوصية (GPC): حل لمشكلة تتبع الويب؟

على عكس سابقه، "عدم التتبع" (DNT)، يحظى إشارة التحكم العالمي في الخصوصية (GPC) بدعم المدعي العام في كاليفورنيا ويهدف إلى التنسيق مع قانون الخصوصية العامة للاتحاد الأوروبي (GDPR)، مما يمنح المستخدمين قوة غير مسبوقة. كان عدم فعالية DNT ناتجًا عن عدم وجود إنفاذ قانوني، لكن GPC يغير ذلك. فهو ينقل طلبات "عدم البيع" من المستخدمين إلى مواقع الويب، مما يجبرها على الامتثال. بدعم من متصفحات مثل Mozilla Firefox وBrave ومتصفح الخصوصية من DuckDuckGo، يشير GPC إلى نقطة تحول محتملة في مكافحة تتبع الويب.

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

واجهة برمجة التطبيقات Temporal: ثورة في التعامل مع التاريخ والوقت في جافا سكريبت

2025-01-30
واجهة برمجة التطبيقات Temporal: ثورة في التعامل مع التاريخ والوقت في جافا سكريبت

تبسط واجهة برمجة التطبيقات Temporal معالجة التاريخ والوقت في جافا سكريبت. وهي تدعم أنظمة التقويم المختلفة (مثل التقويم القمري الصيني)، وتتعامل مع تحويلات المناطق الزمنية بسلاسة، وتوفر طرق مقارنة بديهية. على سبيل المثال، يمكنها حساب عيد رأس السنة الصينية القادم أو تحديد المدة حتى طابع زمني يونكس في المستقبل. على الرغم من اختلاف سلوك `toLocaleString` قليلاً بين عمليات تنفيذ المتصفح، إلا أن واجهة برمجة التطبيقات Temporal توفر عمليات قوية للوقت والتاريخ، مما يجعلها نعمة للمطورين.

اقرأ المزيد

تحديث كبير لموارد التعلم من MDN: إطلاق تجربة تعلم جديدة

2024-12-25
تحديث كبير لموارد التعلم من MDN: إطلاق تجربة تعلم جديدة

في ديسمبر 2024، أطلق MDN تحديثًا كبيرًا لقسم "تعلم تطوير الويب"، حيث قام بدمج منهج MDN مع محتوى التعلم الحالي لإنشاء مسار تعلم أكثر انسيابية.يهدف هذا التحديث إلى معالجة المشكلات السابقة، مثل المحتوى المتضخم ومسارات التعلم غير الواضحة، مما يوفر تجربة أوضح وأكثر سهولة للمبتدئين.يستخدم الموقع الجديد هيكلًا وحدويًا مع أقسام "البدء","النواة" و"الامتدادات"، والتي تتضمن أهداف تعلم واضحة ومحتوى تفاعليًا.سيستمر MDN في تحسين المحتوى والتصميم بهدف توفير موارد تعلم أفضل في المستقبل.

اقرأ المزيد