يتم تقسيم JavaScript إلى مربعات الحوار الوضع ومربعات الحوار غير الوضع. في الواقع ، فإن الفرق بين الاثنين هو ما إذا كان بإمكان المستخدم العمل في مكان آخر على نفس الصفحة قبل إغلاق مربع الحوار. على سبيل المثال ، مربع الحوار "فتح الملف" هو مربع حوار الوضع النموذجي. يمكنك فقط تنفيذ عمليات أخرى على البرنامج الذي يفتح مربع الحوار ، ولكن ليس مربع الحوار الوضع.
مربع الحوار الوضع: showmodaldialog
مربع الحوار غير الوضع: showmodlessdialog
vreturnvalue = window.showmodaldialog (surl [، varguments] [، sfeatures])
vreturnvalue = window.showmodlessdialog (surl [، varguments] [، sfeatures])
قيمة الإرجاع: VreturnValue ، والتي هي بالطبع قيمة الإرجاع التي يتم إرجاعها بواسطة مربع الحوار ؛
SURL: مطلوب ، للصفحة التي تريد فتحها ؛
varguments--
معلمة اختيارية ، اكتب: البديل. تستخدم لتمرير المعلمات إلى مربع الحوار. أنواع المعلمات التي تم تمريرها ليست محدودة ، بما في ذلك المصفوفات ، إلخ. يستخدم مربع الحوار Window.Dialogarguments للحصول على المعلمات التي تم تمريرها.
sfeatures--
معلمة اختيارية ، اكتب: سلسلة. يمكن فصل المعلومات المستخدمة لوصف ظهور مربع الحوار ، مثل المعلومات التالية ، بواسطة فاصلة فاصلة "؛".
1.dialogheight: ارتفاع مربع الحوار لا يقل عن 100 بكسل. الوحدات الافتراضية لحوار الحوار وحوار الحوار في IE4 هي EM ، و PX في IE5 هي PX. من أجل الراحة ، عند تحديد مربع الحوار في طريقة الوسائط ، يتم استخدام PX كوحدة.
2.dialogwidth: عرض مربع الحوار.
3.dialogleft: المسافة من يسار الشاشة.
4.dialogtop: المسافة من الشاشة.
5.center: {نعم | لا | 1 | 0}: ما إذا كانت النافذة متمركزة ، فإن الافتراضي هو نعم ، ولكن لا يزال من الممكن تحديد الارتفاع والعرض.
6.help: {نعم | لا | 1 | 0}: ما إذا كنت تريد عرض زر المساعدة ، فإن الافتراضي هو نعم.
7.SIBERABLE: {نعم | لا | 1 | 0} [ie5+]: ما إذا كان يمكن تغيير الحجم. الافتراضي لا.
8.status: {نعم | لا | 1 | 0} [ie5+]: ما إذا كنت تريد عرض شريط الحالة. الافتراضي هو نعم [بلا تعديل] أو لا [وسيط].
9.Scroll: {نعم | لا | 1 | 0 | على | OFF}: يشير إلى ما إذا كان مربع الحوار يعرض أشرطة التمرير. الافتراضي هو نعم.
يتم استخدام السمات التالية في HTA ولا تستخدم عمومًا في صفحات الويب العامة.
10.dialoghide: {نعم | لا | 1 | 0 | على | OFF}: ما إذا كان مربع الحوار مخفيًا عند طباعة أو طباعة معاينة. الافتراضي هو لا.
11.edge: {غارق | ARIDED}: حدد النمط الحدودي لمربع الحوار. يتم رفع الافتراضي.
12.unadorned: {نعم | لا | 1 | 0 | على | OFF}: الافتراضي هو لا.
مرور الممر:
1. إذا كنت ترغب في تمرير المعلمات في مربع الحوار ، يتم تمريرها من خلال varguments. لا يوجد أي قيود على النوع ، لأنواع السلسلة ، الحد الأقصى هو 4096 حرفًا. يمكن أيضًا تمرير الكائنات ، على سبيل المثال:
---------------------------
Parent.htm
<script> var obj = new Object () ؛ obj.name = "51js" ؛ window.showmodaldialog ("modal.htm" ، obj ، "dialogwidth = 200px ؛ dialogheight = 100px") ؛ </script>modal.htm
<script> var obj = window.dialogarguments Alert ("المعلمة التي تمر بها هي:" + obj.name) </script>---------------------------
2. يمكنك إرجاع المعلومات إلى النافذة حيث يتم فتح مربع الحوار من خلال Window.ReturnValue ، وبالطبع يمكن أن يكون أيضًا كائنًا. على سبيل المثال:
---------------------------------
Parent.htm
<script> str = window.showmodaldialog ("modal.htm" ،، "dialogwidth = 200px ؛ dialogheight = 100px") ؛ تنبيه (STR) ؛ </script>modal.htm
<script> window.returnvalue = "http://www.51js.com" ؛ </script>
بعد استخدام window.showmodaldialog أو Window.ShowModlessDialog لفتح نافذة الوضع ، بعض مشاكل التفاعل مع النافذة الأصل.
للتشغيل التفاعلي ، عند استدعاء طريقة showmodaldialog أو showmodlessdialog ، يتم تمرير المعلمة الثانية إلى النافذة ، مثل:
window.showmodelessdialog ('filename.htm' ، window ، 'dialogwidth = 200px ؛ dialogheight = 250px ؛')
بعد ذلك ، هو الحصول على بعض البيانات وطرق النافذة الأصل. غالبًا ما يستخدم هذا. يمكن التعامل مع معلمات النافذة الأصل التي تأخذ النوافذ الفرعية بشكل عام عن طريق ReturnValue.
// الحصول على js var var window.dialogarguments.var من النافذة الأصل ؛ // احصل على كائن وسمات نافذة الأصل. // استدعاء طريقة النافذة الأصل funwinwindow.dialogarguments.fun () ؛