معايير نجاح WCAG · Level AAA

WCAG 2.2.4: المقاطعات

يتطلب المعيار WCAG 2.2.4 أن يتمكن المستخدمون من تأجيل أو كبح جميع المقاطعات — مثل التنبيهات والإشعارات وتحديثات المحتوى التلقائية — باستثناء تلك التي تتعلق بحالة طارئة. يُعد هذا المعيار ضروريًا للمستخدمين ذوي الإعاقات في الانتباه أو الإدراك أو الإعاقات العصبية الذين قد يتعرضون لاضطراب شديد بسبب المقاطعات غير المتوقعة أثناء أداء مهمة ما.

ماذا تعني هذه القاعدة

WCAG 2.2.4: المقاطعات هي معيار نجاح من المستوى AAA ضمن الإرشاد 2.2 (وقت كافٍ). ينص على ما يلي: "يمكن للمستخدم تأجيل المقاطعات أو منعها، باستثناء المقاطعات التي تتضمن حالة طارئة." عمليًا، يعني هذا أن أي محتوى أو تنبيه أو إشعار أو حوار أو تحديث يظهر دون أن يطلقه المستخدم مباشرة يجب أن يوفّر للمستخدم آلية لتأجيله أو تعطيله — ما لم تكن المقاطعة تنقل حالة طارئة حقيقية مثل إنذار حريق، أو تنبيه طبي يهدد الحياة، أو فشل حرج في النظام.

تُعد المقاطعة، بالمعنى المقصود في WCAG، أي حدث يحدث بشكل مستقل عن الإجراء الحالي للمستخدم ويحوّل الانتباه عمّا يفعله المستخدم. يشمل ذلك، على سبيل المثال لا الحصر: إشعارات التوست، التنبيهات الفورية (push alerts)، عناصر الدردشة التي تنبثق تلقائيًا، الأشرطة العلوية أو السفلية التي يتم تحديثها أو تغييرها، الوسائط التي تُشغَّل تلقائيًا، الإعلانات في المناطق الحية (live regions) التي يحقنها JavaScript، الحوارات النمطية (modal dialogs) التي تُطلق وفق مؤقّت، ولافتات موافقة ملفات تعريف الارتباط التي تظهر في منتصف الجلسة. لا يحظر هذا المعيار هذه الأنماط بشكل مطلق؛ بل يفرض أن يُمنح المستخدمون التحكم فيها.

تكون الصفحة مستوفية للمعيار 2.2.4 عندما تحتوي كل مقاطعة غير طارئة على واحد على الأقل مما يلي: إعداد متاح للمستخدم لتعطيل المقاطعة قبل حدوثها، آلية داخل المقاطعة نفسها لرفضها أو تأجيلها، أو تفضيل عام على مستوى الموقع يمنع مثل هذه المقاطعات بالكامل. وتكون الصفحة غير مستوفية عندما تظهر المقاطعات تلقائيًا، ولا توفّر أي آلية للرفض أو التأجيل، ولا تتعلق بحالة طارئة. على سبيل المثال، فقاعة دردشة مباشرة تتوسع تلقائيًا بعد 10 ثوانٍ دون زر إغلاق، أو شريط إشعارات يعرض رسائل تسويقية متتابعة ولا يمكن إيقافه، كلاهما يُعدّ فشلًا.

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

نظرًا لأن WCAG 2.2.4 من المستوى AAA، فهو ليس مطلوبًا لمطالبات الامتثال الأساسية، لكنه معيار ذو معنى للمنظمات الملتزمة بالشمول الكامل. ينطبق على جميع محتويات الويب: تطبيقات الويب على سطح المكتب والجوال، وتطبيقات الصفحة الواحدة (SPA) التي تستخدم إشعارات مدفوعة بـ JavaScript، وتطبيقات الويب التقدمية (PWA) التي تستفيد من Web Notifications API.

لماذا يهم

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

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

مستخدمو قارئات الشاشة يتأثرون بشكل خاص بالمقاطعات الديناميكية. عندما يتم حقن منطقة حية أو تنبيه ARIA في DOM، تكون قارئات الشاشة مثل NVDA وJAWS وVoiceOver مصممة للإعلان عنه فورًا، مقاطعةً ما كانت تقنية المساعدة تقرأه حاليًا. إذا كان المستخدم يستمع إلى فقرة طويلة من التعليمات المهمة وانطلق إشعار تسويقي من نوع توست في منتصف الجملة، فإن قارئ الشاشة يتخلى عن الفقرة ويعلن الإشعار. يجب على المستخدم بعد ذلك العودة، والعثور على موضعه، وإعادة القراءة — وهي عملية أكثر عبئًا بكثير مما تبدو عليه لشخص يتنقل باستخدام لوحة المفاتيح والصوت فقط.

المستخدمون الذين يعانون من اضطرابات القلق واضطراب ما بعد الصدمة (PTSD) قد يختبرون استجابات ضغط جسدية — مثل تسارع ضربات القلب، وفقدان التركيز، أو نوبات هلع — تُثار بسبب تغييرات بصرية أو سمعية مفاجئة وغير متوقعة. يمكن أن تجعل عدم القدرة على التنبؤ في بيئة مليئة بالمقاطعات غير المضبوطة بعض المواقع غير قابلة للاستخدام عمليًا لهذه الفئات.

المستخدمون المصابون بالصرع أو اضطرابات الجهاز الدهليزي يمكن أن يتضرروا من أنواع معينة من المقاطعات، خصوصًا تلك التي تتضمن وميضًا أو حركة سريعة. بينما يتناول الإرشاد 2.3 مخاطر النوبات بشكل محدد، فإن الأشرطة الإعلانية المتحركة وإشعارات الفيديو التي تُشغَّل تلقائيًا وتظهر بشكل غير متوقع تتقاطع مع كلا المعيارين.

فكّر في سيناريو ملموس: مستخدم مصاب باضطراب فرط الحركة ونقص الانتباه يستخدم بوابة مصرفية عبر الإنترنت لتحويل الأموال بين الحسابات. يقوم بمراجعة مبلغ التحويل ورقم حساب الوجهة بعناية. ينزلق إشعار عرض ترويجي من الزاوية السفلية اليمنى، مما يطلق إعلانًا من قارئ الشاشة وحركة دخول متحركة. يفقد المستخدم موضعه، ولا يستطيع العثور على زر الرفض لأن الحركة جذبت الانتباه بعيدًا، ويقوم عن طريق الخطأ بإرسال مبلغ خاطئ. هذا ليس حالة افتراضية نادرة — بل نتيجة متوقعة لتجاهل هذا المعيار.

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

قواعد Axe-core ذات الصلة

يتطلب WCAG 2.2.4 إجراء اختبار يدوي. لا يمكن للأدوات الآلية، بما في ذلك axe-core، اكتشاف ما إذا كان الموقع ينتج مقاطعات غير قابلة للتحكم بشكل موثوق، لأن ذلك سيتطلب من الأداة: مراقبة كل المحتوى الديناميكي الذي يُحقن أثناء جلسة المستخدم، وتقييم ما إذا كان كل حقن قد تم بمبادرة من المستخدم، وتقييم ما إذا كانت هناك آلية للرفض أو التأجيل متاحة ويمكن الوصول إليها، وتحديد ما إذا كان المحتوى يرقى إلى حالة طارئة. هذه أحكام سياقية وسلوكية تتجاوز نطاق تحليل DOM الثابت.

  • اختبار يدوي مطلوب — التحكم في المقاطعات: يجب على المختبرين التفاعل يدويًا مع الصفحة على مدى فترة من الزمن لملاحظة ما إذا كانت أي تحديثات محتوى أو إشعارات أو حوارات أو وسائط تبدأ دون مبادرة من المستخدم. لكل مقاطعة يتم ملاحظتها، يجب على المختبر التحقق من وجود آلية يمكن الوصول إليها لتأجيلها أو منعها، وأن تكون هذه الآلية نفسها قابلة للوصول عبر لوحة المفاتيح ومعلنًا عنها بواسطة قارئ الشاشة، وألا تتكرر المقاطعة بعد رفضها دون أن يعيد المستخدم تفعيلها.
  • اختبار يدوي مطلوب — تقييم المناطق الحية: يجب مراجعة الصفحات التي تستخدم aria-live أو role='alert' أو role='status' يدويًا لتحديد ما إذا كانت الإعلانات تُطلق بواسطة إجراءات المستخدم (مقبولة) أو بواسطة أحداث قائمة على الوقت أو دفع من الخادم (قد تكون غير متوافقة). يمكن للأداة الآلية الإشارة إلى وجود مناطق حية لكنها لا تستطيع تحديد ما إذا كانت تنتج مقاطعات غير متوقعة أثناء جلسة مستخدم حقيقية.
  • اختبار يدوي مطلوب — استخدام Notification API: يجب أن توفّر تطبيقات الويب التي تطلب إذنًا لإرسال إشعارات دفع على مستوى المتصفح آلية واضحة للمستخدم لإدارة هذه الإشعارات أو منعها من داخل تطبيق الويب نفسه، وليس الاعتماد فقط على عناصر التحكم على مستوى المتصفح. يتطلب ذلك فحصًا يدويًا لتدفق طلب الإذن بالإشعارات وتوفّر تفضيلات الإشعارات داخل التطبيق.

كيفية الاختبار

  1. تشغيل فحص آلي كنقطة أساس. افتح الصفحة في Chrome أو Firefox وشغّل axe DevTools أو Lighthouse. رغم أن أياً من الأداتين لا يحتوي على قاعدة مخصصة للمعيار 2.2.4، فإن الفحص الآلي سيشير إلى مشكلات ذات صلة: الأدوار المفقودة على المحتوى الديناميكي، المناطق الحية المكوّنة بشكل غير صحيح، ومشكلات إدارة التركيز في الحوارات. دوّن أي مناطق aria-live أو عناصر role='alert' تم الإشارة إليها، إذ ستحتاج هذه إلى متابعة يدوية.
  2. مراقبة الصفحة بشكل سلبي لمدة دقيقتين إلى ثلاث دقائق على الأقل. دون النقر على أي شيء، راقب واستمع لأي محتوى يتغير أو يظهر أو يعلن عن نفسه. استخدم قارئ شاشة يعمل في الخلفية (NVDA مع Firefox، أو VoiceOver مع Safari على macOS) واستمع لأي إعلانات لم تُطلقها أفعالك. دوّن كل مقاطعة، وتوقيتها، ومحتواها.
  3. اختبار التدفقات التفاعلية التي غالبًا ما تطلق إشعارات. سجّل الدخول إلى التطبيق إن أمكن، وانتقل إلى نموذج أو عملية متعددة الخطوات، وابدأ في ملئها ببطء. دوّن أي مقاطعات تحدث: تحذيرات انتهاء الجلسة، دعوات الدردشة، الأشرطة الترويجية، تحديثات التقدم، أو مطالبات الاشتراك. لكل منها، حاول رفضها أو تأجيلها باستخدام لوحة المفاتيح فقط (Tab، Escape، Enter، Space). تحقق من أن التركيز يعود إلى موقع منطقي بعد الرفض.
  4. الاختبار باستخدام NVDA وFirefox. فعّل NVDA، وافتح Firefox، وتصفّح الصفحة. استمع بعناية لأي مخرجات صوتية تقاطع قراءتك الحالية. إذا انطلق إشعار آلي، حاول رفضه باستخدام عناصر تحكم لوحة المفاتيح وتحقق من أن NVDA يعلن تأكيد الرفض أو أن التركيز يعود بشكل مناسب.
  5. الاختبار باستخدام JAWS وChrome. كرر المراقبة السلبية واختبارات التدفقات التفاعلية باستخدام JAWS مع Chrome. يتعامل JAWS وNVDA مع المناطق الحية بشكل مختلف، لذا من المهم اختبار كليهما لضمان الإعلان عن المقاطعات بشكل متسق وأن آليات الرفض تعمل في كلا قارئي الشاشة.
  6. الاختبار باستخدام VoiceOver وSafari على iOS. على جهاز محمول أو محاكي، استخدم VoiceOver مع Safari لتصفح الصفحة. مرّر عبر المحتوى ولاحظ ما إذا كانت أي مقاطعات تحدث. اختبر آلية الرفض باستخدام إيماءات اللمس (نقرة مزدوجة للتفعيل) وتحقق من أن التركيز يعود إلى موقع ذي معنى.
  7. التحقق من وجود إعداد لتفضيلات الإشعارات. ابحث عن ملف مستخدم، أو لوحة إعدادات، أو قسم تفضيلات إمكانية الوصول داخل التطبيق. تحقق من وجود عنصر تحكم يسمح بمنع الإشعارات أو تهيئتها على مستوى التطبيق، واختبر أن تفعيل هذا الإعداد يمنع بالفعل حدوث المقاطعات خلال جلسة لاحقة.
  8. مراجعة مصدر JavaScript أو نشاط الشبكة. في أدوات المطور بالمتصفح، راقب تبويبي Network وConsole أثناء الجلسة. ابحث عن اتصالات WebSocket، أو فترات polling، أو استدعاءات setTimeout/setInterval التي تحقن محتوى في DOM. كل من هذه يمثل مصدرًا محتملًا للمقاطعات ويجب تتبعه للتأكد من تنفيذ تحكم المستخدم بشكل صحيح.

كيفية الإصلاح

عنصر دردشة يُفتح تلقائيًا — غير صحيح

<!-- Chat widget opens automatically after 10 seconds with no close button -->
<div id='chat-widget' role='dialog' aria-label='Live chat'>
  <p>Hi! Can we help you today?</p>
  <button>Start chat</button>
</div>

<script>
  setTimeout(function() {
    document.getElementById('chat-widget').style.display = 'block';
  }, 10000);
</script>

عنصر دردشة يُفتح تلقائيًا — صحيح

<!-- Chat widget includes a dismiss button and respects a user preference -->
<div id='chat-widget' role='dialog' aria-label='Live chat' aria-modal='true'>
  <p>Hi! Can we help you today?</p>
  <button id='chat-start'>Start chat</button>
  <!-- Dismiss button allows user to postpone the interruption -->
  <button id='chat-dismiss' aria-label='Dismiss chat offer'>No thanks</button>
</div>

<script>
  // Check whether the user has previously dismissed the chat offer
  if (!sessionStorage.getItem('chat-dismissed')) {
    setTimeout(function() {
      var widget = document.getElementById('chat-widget');
      widget.removeAttribute('hidden');
      // Move focus into the dialog so screen reader users are aware of it
      document.getElementById('chat-dismiss').focus();
    }, 10000);
  }

  document.getElementById('chat-dismiss').addEventListener('click', function() {
    // Suppress for the remainder of the session
    sessionStorage.setItem('chat-dismissed', 'true');
    var widget = document.getElementById('chat-widget');
    widget.setAttribute('hidden', '');
    // Return focus to the element the user was on before the interruption
    document.getElementById('main-content').focus();
  });
</script>

إشعار توست تسويقي غير قابل للتحكم — غير صحيح

<!-- Toast fires every 30 seconds, no way to stop it -->
<div role='alert' id='promo-toast'>
  <p>Use code SAVE20 for 20% off your next order!</p>
</div>

<script>
  setInterval(function() {
    document.getElementById('promo-toast').style.display = 'block';
    setTimeout(function() {
      document.getElementById('promo-toast').style.display = 'none';
    }, 5000);
  }, 30000);
</script>

إشعار توست تسويقي غير قابل للتحكم — صحيح

<!-- Toast fires once, includes a dismiss control, and respects a preference -->
<div role='status' id='promo-toast' hidden>
  <p>Use code SAVE20 for 20% off your next order!</p>
  <!-- Dismiss button suppresses future promos in this session -->
  <button id='promo-dismiss' aria-label='Dismiss promotion'>&times;</button>
</div>

<script>
  // Only show once, and only if the user has not opted out
  if (!localStorage.getItem('promos-suppressed')) {
    setTimeout(function() {
      document.getElementById('promo-toast').removeAttribute('hidden');
    }, 30000);
  }

  document.getElementById('promo-dismiss').addEventListener('click', function() {
    // Suppress all future promotional interruptions permanently
    localStorage.setItem('promos-suppressed', 'true');
    document.getElementById('promo-toast').setAttribute('hidden', '');
  });
</script>

حوار انتهاء جلسة بدون تحكم للمستخدم — غير صحيح

<!-- Modal fires automatically, traps focus with no postpone option -->
<div id='timeout-modal' role='dialog' aria-label='Session expiring'>
  <p>Your session will expire in 60 seconds.</p>
  <button id='logout-now'>Log out</button>
</div>

حوار انتهاء جلسة بدون تحكم للمستخدم — صحيح

<!-- Modal provides both a continue option and a postpone option,
     and announces itself clearly to screen readers -->
<div id='timeout-modal' role='alertdialog'
     aria-labelledby='timeout-heading'
     aria-describedby='timeout-description'
     aria-modal='true'>
  <h2 id='timeout-heading'>Session Expiring Soon</h2>
  <p id='timeout-description'>
    Your session will expire in <span id='countdown'>5 minutes</span>.
    Would you like to continue, or shall we log you out now?
  </p>
  <button id='continue-session'>Continue session</button>
  <button id='logout-now'>Log out now</button>
  <!-- Postpone option gives the user meaningful control -->
  <button id='remind-later'>Remind me in 5 more minutes</button>
</div>

الأخطاء الشائعة

  • استخدام role='alert' للرسائل الترويجية أو منخفضة الأولوية. يشير دور alert إلى درجة عالية من الإلحاح لقارئات الشاشة ويتسبب في مقاطعة فورية للقراءة. يجب أن تستخدم الرسائل التسويقية، والنصائح، وإعلانات الميزات role='status' أو aria-live='polite' بدلًا من ذلك، والتي تعلن المحتوى فقط بعد أن ينهي قارئ الشاشة مخرجه الحالي.
  • توفير زر إغلاق لا يظهر إلا عند التحويم أو التركيز، مما يجعله غير قابل للوصول عمليًا. إذا كانت آلية الرفض تتطلب من المستخدم التحويم بالفأرة لإظهارها، فلن يتمكن مستخدمو لوحة المفاتيح فقط ومستخدمو قارئات الشاشة من رؤيتها أو الوصول إليها. يجب أن يكون زر الرفض مرئيًا دائمًا، أو على الأقل قابلًا للوصول دائمًا عبر ترتيب تبويب لوحة المفاتيح.
  • إرجاع التركيز إلى document.body بعد رفض إشعار. عند رفض إشعار أو حوار، يجب أن يعود التركيز إلى عنصر ذي معنى ومناسب سياقيًا — عادةً العنصر الذي كان المستخدم يتفاعل معه قبل ظهور المقاطعة. إسقاط التركيز على body يجبر مستخدمي قارئات الشاشة على إعادة تصفح الصفحة بالكامل.
  • تشغيل عدة مناطق aria-live في الوقت نفسه. عندما يتم تحديث عدة مناطق حية في الوقت ذاته، تقوم قارئات الشاشة بصفّ الإعلانات أو إسقاطها بشكل غير متوقع. يجب إدارة كل مقاطعة بعناية بحيث لا تعمل إلا منطقة حية واحدة في كل مرة، وأن تُجمّع التحديثات حيثما أمكن.
  • اعتبار مطالبة إذن الإشعارات الأصلية في المتصفح تحكمًا كافيًا للمستخدم. يعمل مربع حوار إذن المتصفح لـ Web Notifications API على مستوى نظام التشغيل، وليس على مستوى التطبيق. يتطلب WCAG 2.2.4 أن يتمكن المستخدمون من إدارة الإشعارات من داخل تطبيق الويب نفسه، وليس فقط عن طريق حظر الموقع على مستوى المتصفح.
  • إعادة تعيين إشعار تم رفضه في كل مرة يتم فيها تحميل الصفحة. إذا رفض المستخدم إشعارًا وظهر مرة أخرى في المرة التالية التي ينتقل فيها إلى نفس الصفحة أو صفحة أخرى على الموقع، فإن إجراء الرفض كان بلا معنى. يجب أن تستمر التفضيلات على الأقل طوال الجلسة باستخدام sessionStorage، أو بشكل دائم باستخدام localStorage أو تفضيل على الخادم.
  • استخدام setInterval لتدوير الأشرطة أو النصائح دون عنصر تحكم للإيقاف المؤقت. يُعد المحتوى الدوّار الذي يتم تحديثه وفق مؤقّت مقاطعة. إذا تغير المحتوى بينما يقرأه مستخدم قارئ الشاشة، فسيُعاد تشغيل الإعلان. تتطلب هذه المعارض الدوّارة والأشرطة المتغيرة عنصر تحكم تشغيل/إيقاف مؤقت، ويجب ألا تدور إلى ما لا نهاية دون موافقة المستخدم.
  • حقن إشعار في DOM في موضع يتسبب في قفزات تمرير غير متوقعة. إذا تم حقن شريط إشعار في أعلى الصفحة وتحركت الصفحة إلى أسفل، يفقد المستخدمون موضعهم البصري في القراءة. يجب حقن الإشعارات بطريقة لا تؤثر على تخطيط المحتوى الذي يراه المستخدم حاليًا، عادةً باستخدام تموضع ثابت (fixed) أو مطلق (absolute).
  • افتراض أن مؤقّت الإخفاء التلقائي القصير يفي بالمعيار. لا يمنح توست يختفي بعد خمس ثوانٍ المستخدمين تحكمًا ذا معنى — فالكثير من المستخدمين لا يمكنهم قراءة المحتوى ومعالجته والاستجابة له بهذه السرعة، خصوصًا ذوي الإعاقات المعرفية أو مستخدمي قارئات الشاشة. توفير مؤقّت إخفاء تلقائي فقط دون زر رفض يتحكم فيه المستخدم يُعدّ غير متوافق.
  • الفشل في اختبار سلوك المقاطعات عندما تكون تفضيلات تقليل الحركة أو الإشعارات مفعّلة في نظام التشغيل أو المتصفح لدى المستخدم. يضبط بعض المستخدمين تفضيلات على مستوى نظام التشغيل لتقليل الحركة أو منع الإشعارات. يجب أن تحترم التطبيقات هذه الإشارات، وعلى المطورين الاختبار مع تفعيل استعلام الوسائط prefers-reduced-motion: reduce للتأكد من قمع المقاطعات المتحركة بشكل مناسب.

العلاقة مع لوائح إمكانية الوصول في تركيا

تُنشئ المذكرة الرئاسية التركية 2025/10، المنشورة في الجريدة الرسمية (رقم 32933) بتاريخ 21 يونيو 2025، إطارًا ملزمًا لإمكانية الوصول على الويب لمجموعة واسعة من المنظمات العاملة في تركيا. تعتمد المذكرة WCAG 2.2 كمعيار مرجعي تقني وتفرض الامتثال على الكيانات المشمولة. تشمل أنواع الكيانات المنصوص عليها صراحة في المذكرة المؤسسات والهيئات العامة، ومنصات التجارة الإلكترونية، والبنوك ومقدمي الخدمات المالية، والمستشفيات ومنظمات الخدمات الصحية، وشركات الاتصالات التي لديها 200,000 مشترك أو أكثر، ووكالات السفر المرخّصة، وشركات النقل الخاصة، والمدارس الخاصة التي تعمل بتصريح من وزارة التربية الوطنية (MoNE).

يُعد WCAG 2.2.4: المقاطعات معيارًا من المستوى AAA، ما يعني أنه ليس ضمن متطلبات الامتثال الأساسية بموجب المذكرة الرئاسية 2025/10 لمعظم الكيانات المشمولة. تُعتبر المنظمات التي تحقق وتعلن امتثالها للمستويين A وAA ممتثلة قانونيًا للحد الأدنى من متطلبات المذكرة. ومع ذلك، فإن معايير المستوى AAA مثل 2.2.4 تحمل وزنًا عمليًا وسمعيًا كبيرًا في سياق السوق التركي.

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

بالنسبة للمنظمات في تركيا التي تسعى لإظهار الريادة في إمكانية الوصول الرقمي — خصوصًا تلك التي تسعى إلى إعلانات طوعية بالامتثال لـ WCAG 2.2 على مستوى AAA، أو تستجيب لمتطلبات إمكانية الوصول في المشتريات العامة، أو تستهدف الأسواق الأوروبية حيث يضع قانون إمكانية الوصول الأوروبي (EAA) معيارًا أعلى — يُعد تنفيذ المعيار 2.2.4 عامل تمييز ذا معنى. يدعم حزمة Accsible overlay SDK المنظمات في تلبية هذه المعايير الأعلى من خلال توفير ميزات قابلة للتهيئة لإدارة الإشعارات، واستمرارية تفضيلات المستخدم، وسلوكيات عناصر واجهة مستخدم واعية بإمكانية الوصول تتماشى مع توقعات اللوائح التركية وأفضل الممارسات الدولية.