هل يمكن أن يكون مربع حوار JavaScript مشروطًا فقط لعلامة التبويب وليس لنافذة المتصفح بأكملها؟

StackOverflow https://stackoverflow.com/questions/287242

  •  08-07-2019
  •  | 
  •  

سؤال

المتصفحات الحديثة لديها واجهة متعددة علامات التبويب، ولكن وظيفة جافا سكريبت window.showModalDialog() ينشئ مربع حوار مشروط يمنع الجميع من علامات التبويب.

أود معرفة ما إذا كانت هناك طريقة لإنشاء مربع حوار مشروط يحظر فقط علامة التبويب التي تم إنشاؤها فيها؟

هل كانت مفيدة؟

المحلول

هل يمكن استخدام واحدة من أكثر 'أياكس مثل "مربعات حوار مشروط، والتي هي عناصر div وضع فقط المطلقة، وتطفو فوق كل شيء آخر.

وهذه هي الوسائط إلى "وثيقة" وليس المتصفح.

وعلى سبيل المثال نلقي نظرة عليه هذا مسج المساعد

وP.S. showModalDialog() هو IE الاتصال فقط، لذلك قد ترغب في عدم استخدام ذلك تماما.

نصائح أخرى

لا.من الممكن تصور أن "الاقتران الفضفاض" الخاص بـ IE8 قد يتصرف بهذه الطريقة في مرحلة ما، لكنه ليس كذلك في الإصدارات التجريبية الحالية.

أنا أؤيد توصية ميشيل.الحوار النموذجي الزائف الذي يعمل عن طريق حجب بقية الصفحة، وتعويم div في الأعلى، واستدعاء البرنامج النصي مرة أخرى عند الانتهاء، هو كلاهما:

  • أكثر قابلية للاستخدام/أقل إزعاجًا من الحوار المشروط الحقيقي
  • متوافق مع أي متصفح

يجب عمومًا تجنب showModalDialog/showModelessDialog نفسها.

فايرفوكس 3 يدعم window.showModalDialog (ولكن أيضا كتل كافة علامات التبويب ).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top