فتح "اختصارات لوحة المفاتيح" في علامة تبويب جديدة يعيد نفس الصفحة التي كنت عليها عند النقر على "اختصارات لوحة المفاتيح"

مرحباً، أعتقد أن هذه ليست مشكلة تقنية بقدر ما هي سلوك غير متوقع…

أعتاد استخدام ⌘+نقر لفتح الروابط في تبويبات جديدة على جهاز Mac الخاص بي. وعندما أفعل ذلك في “اختصارات لوحة المفاتيح” ضمن قائمة الهامبرغر، يفتح تبويباً جديداً لا يعرض اختصارات لوحة المفاتيح.

يتم التعامل مع التنقل لذلك “الرابط” داخل التطبيق. لقد وضعت رابط بين علامتي اقتباس لأنه ليس رابطًا فعليًا حيث لا يشير إلى أي عنوان محدد

<a class="widget-link keyboard-shortcuts-link" href="" title="اختصارات لوحة المفاتيح">
  <span class="d-label">اختصارات لوحة المفاتيح</span>
</a>

لاحظ كيف أن سمة href فارغة؟

فقط يفتح نافذة منبثقة أو صندوق حوار. لذا، لا يمكن فتح ذلك الرابط في علامة تبويب جديدة وإظهار تلك النافذة المنبثقة.

إعجاب واحد (1)

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

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

4 إعجابات

مقبول، وسم الرابط بدون href صالح في HTML5.

المشكلة في إزالته هي أنه سيُزيل الرابط من فهرس التنقل (tab index)، مما يعني أنه لا يمكن الوصول إلى هذا الرابط باستخدام لوحة المفاتيح أو طرق الإدخال البديلة الأخرى.

يمكننا إصلاح ذلك بإضافة tabindex: 0

لذا يمكننا فعل شيء مثل هذا

links.push({
  action: "showKeyboard",
  className: "keyboard-shortcuts-link",
  label: "keyboard_shortcuts_help.title",
  attributes: {
    tabindex: 0
  }
});

إلا إذا كان @awesomerobot على علم بأي مشاكل أخرى تتعلق بإزالة href؟

5 إعجابات

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

يجب أن نفتح نافذة الحوار الخاصة بلوحة المفاتيح في كلتا الحالتين على النحو الأمثل. في /widgets/link.js.es6 لدينا

click(e) {
if (wantsNewWindow(e)) {
      return;
    }
...

إذًا يبدو أننا نمنع أي شيء من الحدوث عند النقر هناك إذا كان يطلب نافذة أو تبويبًا جديدًا؟… أتساءل عما إذا كان بإمكاننا إعادة تنظيم الأمر قليلاً هناك حتى نتمكن من فتح نافذة الحوار على الرغم من مفاتيح التعديل؟

5 إعجابات