الفرق بين المراجعتين ل"Cordova/cordova plugin dialogs"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:إضافة مربعات الحوار في كوردوفا}}</noinclude> تصنيف: Cordova تصنيف: plugin تصنيف: cordo...')
 
سطر 1: سطر 1:
 
<noinclude>{{DISPLAYTITLE:إضافة مربعات الحوار في كوردوفا}}</noinclude>
 
<noinclude>{{DISPLAYTITLE:إضافة مربعات الحوار في كوردوفا}}</noinclude>
[[تصنيف: Cordova]]
+
[[تصنيف: Cordova]]
[[تصنيف: plugin]]
+
[[تصنيف: plugin]]
[[تصنيف: cordova_plugin_dialogs]]
+
[[تصنيف: cordova_plugin_dialogs]]
توفر هذه الإضافة إمكانية الوصول إلى بعض عناصر نوافذ الحوار الأصلية عبر الكائن العام <code>navigator.notification</code>.  
+
توفر هذه الإضافة إمكانية الوصول إلى بعض مربعات الحوار الأصلية عبر الكائن العام <code>navigator.notification</code>.
  
على الرغم من أن الكائن مربوط بالنطاق العام للكائن <code>navigator</code>، إلا أنه غير متوفر إلا بعد إطلاق الحدث <code>deviceready</code>.  
+
على الرغم من أن هذا الكائن مربوط بالنطاق العام للكائن <code>navigator</code>، إلا أنه لن يكون متوفرًا إلا بعد إطلاق الحدث <code>[[Cordova/events#deviceready|deviceready]]</code>.  
 
<syntaxhighlight lang="javascript">document.addEventListener("deviceready", onDeviceReady, false);
 
<syntaxhighlight lang="javascript">document.addEventListener("deviceready", onDeviceReady, false);
 
function onDeviceReady() {
 
function onDeviceReady() {
سطر 11: سطر 11:
 
}‎</syntaxhighlight>  
 
}‎</syntaxhighlight>  
  
تقرير القضايا على [https://issues.apache.org/jira/issues/?jql=project%20%3D%20CB%20AND%20status%20in%20%28Open%2C%20%22In%20Progress%22%2C%20Reopened%29%20AND%20resolution%20%3D%20Unresolved%20AND%20component%20%3D%20%22Plugin%20Dialogs%22%20ORDER%20BY%20priority%20DESC%2C%20summary%20ASC%2C%20updatedDate%20DESC Apache Cordova issue tracker]
+
== التثبيت ==
 +
يمكن تثبيت هذه الإضافة عبر الأمر:<syntaxhighlight lang="javascript">cordova plugin add cordova-plugin-dialogs‎</syntaxhighlight>
  
== التثبيت ==  
+
== التوابع ==
<syntaxhighlight lang="javascript">cordova plugin add cordova-plugin-dialogs‎</syntaxhighlight>  
+
===<code>navigator.notification.alert</code>===
  
== التوابع ==
+
يُظهر التابع <code>alert</code> مربع حوار (dialog box) أو مربع تنبيه (alert box) مخصص. معظم تقديمات (implementations) كوردوفا لهذا التابع تستخدم مربع حوار أصلي لهذه الميزة، لكن بعض المنصات تستخدم دالة المتصفح <code>alert</code>، والتي تكون عادةً أقل قابلية للتخصيص.  
*<code>navigator.notification.alert</code>  
+
<syntaxhighlight lang="javascript">navigator.notification.alert(message, alertCallback, [title], [buttonName])‎</syntaxhighlight>
*<code>navigator.notification.confirm</code>  
 
*<code>navigator.notification.prompt</code>
 
*<code>navigator.notification.beep</code>  
 
  
==navigator.notification.alert==  
+
==== المعاملات ====
 
+
* <code>message</code>: رسالة مربع الحوار (سلسلة نصية)  
يظهر التابع alert مربع حوار أو تنبيه مخصص. معظم تقديمات (implementations) كوردوفا لهذا التابع تستخدم مربع حوار أصلي لهذه الميزة، لكن بعض المنصات تستخدم دالة المتصفح <code>alert</code>، والتي هي عادةً أقل قابلية للتخصيص.
+
* <code>alertCallback</code>: دالة استجابة (Callback) تُستدعى عند إنهاء مربع التنبيه (alert dialog). (دالة)  
<syntaxhighlight lang="javascript">navigator.notification.alert(message, alertCallback, [title], [buttonName])‎</syntaxhighlight>
+
* <code>title</code>: عنوان مربع الحوار (سلسلة نصية، اختياري، القيمة الافتراضية هي <code>Alert</code>)  
* '''message''': رسالة مربع الحوار. (سلسلة نصية)  
+
* <code>buttonName</code>: اسم الزر. (سلسلة نصية، اختياري، القيمة الافتراضية هي <code>OK</code>)  
* '''alertCallback''': دالة استجابة (Callback) تُستدعى عند إنهاء مربع حوار التنبيه (alert dialog). (دالة)  
 
* '''title''': عنوان مربع الحوار. (سلسلة نصية) (اختياري، القيمة الافتراضية هي <code>Alert</code>)  
 
* '''buttonName''': اسم الزر. (سلسلة نصية) (اختياري، القيمة الافتراضية هي <code>OK</code>)  
 
 
=== مثال ===  
 
=== مثال ===  
 
<syntaxhighlight lang="javascript">function alertDismissed() {
 
<syntaxhighlight lang="javascript">function alertDismissed() {
     // do something
+
     // افعل شيئا ما
 
}
 
}
 
navigator.notification.alert(
 
navigator.notification.alert(
     'You are the winner!',  // message
+
     'You are the winner!',  // الرسالة
     alertDismissed,        // callback
+
     alertDismissed,        // دالة الاستجابة
     'Game Over',            // title
+
     'Game Over',            // العنوان
     'Done'                  // buttonName
+
     'Done'                  // اسم الزر
 
);‎</syntaxhighlight>  
 
);‎</syntaxhighlight>  
=== المنصات المدعومة ===  
+
==== المنصات المدعومة ====  
 
*أندرويد  
 
*أندرويد  
 
*Browser  
 
*Browser  
سطر 46: سطر 41:
 
*ويندوز  
 
*ويندوز  
  
==navigator.notification.confirm==  
+
===<code>navigator.notification.confirm</code>===  
  
 
يعرض هذا التابع مربع تأكيد (confirmation dialog box) قابل للتخصيص.  
 
يعرض هذا التابع مربع تأكيد (confirmation dialog box) قابل للتخصيص.  
<syntaxhighlight lang="javascript">navigator.notification.confirm(message, confirmCallback, [title], [buttonLabels])‎</syntaxhighlight>  
+
<syntaxhighlight lang="javascript">navigator.notification.confirm(message, confirmCallback, [title], [buttonLabels])‎</syntaxhighlight>
* '''message''': رسالة مربع الحوار. (سلسلة نصية)  
+
 
* '''confirmCallback''': دالة استجابة (Callback) تُستدعى مع فهرس الزر الذي نقر عليه المستخدم (1 أو 2 أو 3) أو عند إنهاء مربع الحوار دون الضغط على أي زر (0). (دالة)  
+
==== المعاملات ====
* '''title''': عنوان مربع الحوار. (سلسلة نصية) (اختياري، القيمة الافتراضية هي <code>Confirm</code>)  
+
* <code>message</code>: رسالة مربع الحوار (سلسلة نصية)  
* '''buttonLabels''': مصفوفة من السلاسل النصية تحدد تسميات (labels) الأزرار. (مصفوفة) (اختياري، القيمة الافتراضية هي [<code>OK,Cancel</code>])  
+
* <code>confirmCallback</code>: دالة استجابة (Callback) تُستدعى مع فهرس الزر الذي ضغط عليه المستخدم (<code>1</code> أو <code>2</code> أو <code>3</code>) أو عند إنهاء مربع الحوار دون الضغط على أي زر (<code>0</code>). (دالة)  
===confirmCallback===  
+
* <code>title</code>: عنوان مربع الحوار (سلسلة نصية، اختياري، القيمة الافتراضية هي <code>Confirm</code>)  
 +
* <code>buttonLabels</code>: مصفوفة من السلاسل النصية تحدد تسميات (labels) الأزرار. (مصفوفة، اختياري، القيمة الافتراضية هي [<code>OK,Cancel</code>])  
 +
====<code>confirmCallback</code>====  
  
 
تُنفّذ دالة الاستجابة <code>confirmCallback</code> عندما يضغط المستخدم على أحد الأزرار في مربع التأكيد.  
 
تُنفّذ دالة الاستجابة <code>confirmCallback</code> عندما يضغط المستخدم على أحد الأزرار في مربع التأكيد.  
  
تأخذ هذه الدالة الوسيط <code>buttonIndex</code> (عدد)، والذي يمثل فهرس الزر المضغوط. تذكر أن الفهرسة تبدأ بالعدد واحد، وبالتالي فالقيم الممكنة هي <code>1</code>، <code>2</code>، <code>3</code>، إلخ.  
+
تأخذ هذه الدالة الوسيط <code>buttonIndex</code> (عدد)، والذي يمثل فهرس الزر المضغوط (تذكر أن الفهرسة تبدأ بالعدد واحد، وبالتالي فالقيم الممكنة هي <code>1</code>، <code>2</code>، <code>3</code>، إلخ).  
=== مثال ===  
+
==== مثال ====  
 
<syntaxhighlight lang="javascript">function onConfirm(buttonIndex) {
 
<syntaxhighlight lang="javascript">function onConfirm(buttonIndex) {
 
     alert('You selected button ' + buttonIndex);
 
     alert('You selected button ' + buttonIndex);
 
}
 
}
 
navigator.notification.confirm(
 
navigator.notification.confirm(
     'You are the winner!', // message
+
     'You are the winner!', // الرسالة
     onConfirm,            // callback to invoke with index of button pressed
+
     onConfirm,            // دالة الاستجابة التي ستُستدعى مع فهرس الزر المضغوط
     'Game Over',          // title
+
     'Game Over',          // العنوان
     ['Restart','Exit']    // buttonLabels
+
     ['Restart','Exit']    // اسم الزر
 
);‎</syntaxhighlight>  
 
);‎</syntaxhighlight>  
=== المنصات المدعومة ===  
+
==== المنصات المدعومة ====  
 
*أندرويد  
 
*أندرويد  
 
*Browser  
 
*Browser  
 
*iOS  
 
*iOS  
 
*ويندوز  
 
*ويندوز  
===ملاحظات خاصة بمنصة أندرويد ===  
+
====ملاحظات خاصة بمنصة أندرويد ====  
* يدعم أندرويد ثلاثة أزرار كحد أقصى، ويتجاهل الأزرار الإضافية ذلك.  
+
* يدعم أندرويد ثلاثة أزرار كحد أقصى، ويتجاهل الأزرار الإضافية.  
=== ملاحظات خاصة بمنصة ويندوز ===  
+
==== ملاحظات خاصة بمنصة ويندوز ====  
* على منصتي ويندوز 8 و8.1، ليس من الممكن إضافة أكثر من ثلاثة أزرار إلى نسخة MessageDialog.  
+
* على منصتي ويندوز 8 و8.1، ليس من الممكن إضافة أكثر من ثلاثة أزرار إلى نُسخة (instance‏) <code>MessageDialog</code>.  
 
* على منصة Windows Phone 8.1، لا يمكن إظهار مربع حوار بأكثر من زرين.  
 
* على منصة Windows Phone 8.1، لا يمكن إظهار مربع حوار بأكثر من زرين.  
  
==navigator.notification.prompt==  
+
===<code>navigator.notification.prompt</code>===  
  
 
يعرض هذا التابع مربع حوار أصلي أكثر قابلية للتخصيص من دالة المتصفح <code>prompt</code>.  
 
يعرض هذا التابع مربع حوار أصلي أكثر قابلية للتخصيص من دالة المتصفح <code>prompt</code>.  
<syntaxhighlight lang="javascript">navigator.notification.prompt(message, promptCallback, [title], [buttonLabels], [defaultText])‎</syntaxhighlight>  
+
<syntaxhighlight lang="javascript">navigator.notification.prompt(message, promptCallback, [title], [buttonLabels], [defaultText])‎</syntaxhighlight>
* '''message''': رسالة مربع الحوار. (سلسلة نصية)  
+
 
* '''promptCallback''': دالة استجابة (Callback) تُستدعى مع فهرس الزر الذي ضغط عليه المستخدم (1 أو 2 أو 3) أو عندما يتم إنهاء مربع الحوار دون الضغط على أيِّ زر (0). (دالة)  
+
==== المعاملات ====
* '''title''': عنوان مربع الحوار (سلسلة نصية) (اختياري، القيمة الافتراضية هي <code>Prompt</code>)  
+
* <code>message</code>: رسالة مربع الحوار (سلسلة نصية)  
* '''buttonLabels''': مصفوفة من السلاسل النصية التي تحدد تسميات الأزرار (مصفوفة) (اختياري، القيمة الافتراضية هي <code>["OK","Cancel"]</code>)  
+
* <code>promptCallback</code>: دالة استجابة (Callback) تُستدعى مع فهرس الزر الذي ضغط عليه المستخدم (<code>1</code> أو <code>2</code> أو <code>3</code>) أو عندما يتم إنهاء مربع الحوار دون الضغط على أيِّ زر (<code>0</code>). (دالة)  
* '''defaultText''': القيمة الافتراضية لمربع الإدخال textbox‏ (<code>String</code>) (اختياري، القيمة الافتراضية: سلسلة نصية فارغة)  
+
* <code>title</code>: عنوان مربع الحوار (سلسلة نصية) (اختياري، القيمة الافتراضية هي <code>Prompt</code>)  
===promptCallback===  
+
* <code>buttonLabels</code>: مصفوفة من السلاسل النصية التي تحدد تسميات الأزرار (مصفوفة، اختياري، القيمة الافتراضية هي <code>["OK","Cancel"]</code>)  
 +
* <code>defaultText</code>: القيمة الافتراضية لمربع الإدخال textbox‏ (سلسلة نصية، اختياري، القيمة الافتراضية: <code>""</code>)  
 +
====<code>promptCallback</code>====  
  
 
تُنفذ دالة الاستدعاء <code>promptCallback</code> عندما يضغط المستخدم على أحد الأزرار في مربع الطلب (prompt dialog box‏). يحتوي الكائن <code>results</code> الممرّر إلى دالة الاستجابة على الخاصيات التالية:  
 
تُنفذ دالة الاستدعاء <code>promptCallback</code> عندما يضغط المستخدم على أحد الأزرار في مربع الطلب (prompt dialog box‏). يحتوي الكائن <code>results</code> الممرّر إلى دالة الاستجابة على الخاصيات التالية:  
* '''buttonIndex''': فهرس الزر المضغوط. (عدد) لاحظ أن الفهرس يبدأ من العدد واحد، وبالتالي فإن القيم الممكنة هي <code>1</code> و <code>2</code> و <code>3</code>، إلخ.  
+
* <code>buttonIndex</code>: فهرس الزر المضغوط (عدد)، تذكر أن الفهرس يبدأ من العدد واحد، وبالتالي فإن القيم الممكنة هي <code>1</code> و <code>2</code> و <code>3</code>، إلخ.  
* '''input1''': النص المُدخل في مربع الطلب. (سلسلة نصية)  
+
* <code>input1</code>: النص المُدخل في مربع الطلب (سلسلة نصية).
=== مثال ===  
+
==== مثال ====  
 
<syntaxhighlight lang="javascript">function onPrompt(results) {
 
<syntaxhighlight lang="javascript">function onPrompt(results) {
 
     alert("You selected button number " + results.buttonIndex + " and entered " + results.input1);
 
     alert("You selected button number " + results.buttonIndex + " and entered " + results.input1);
 
}
 
}
 
navigator.notification.prompt(
 
navigator.notification.prompt(
     'Please enter your name',  // message
+
     'Please enter your name',  // الرسالة
     onPrompt,                  // callback to invoke
+
     onPrompt,                  // دالة الاستجابة المراد استدعاؤها
     'Registration',            // title
+
     'Registration',            // العنوان
     ['Ok','Exit'],            // buttonLabels
+
     ['Ok','Exit'],            // اسم الزر
     'Jane Doe'                // defaultText
+
     'Jane Doe'                // النص الافتراضي
 
);‎</syntaxhighlight>  
 
);‎</syntaxhighlight>  
=== المنصات المدعومة ===  
+
==== المنصات المدعومة ====  
 
*أندرويد  
 
*أندرويد  
 
*Browser  
 
*Browser  
 
*iOS  
 
*iOS  
 
*ويندوز  
 
*ويندوز  
===ملاحظات خاصة بمنصة أندرويد ===  
+
====ملاحظات خاصة بمنصة أندرويد ====  
 
* يدعم أندرويد ثلاثة أزرار كحد أقصى، ويتجاهل ما زاد عن ذلك.  
 
* يدعم أندرويد ثلاثة أزرار كحد أقصى، ويتجاهل ما زاد عن ذلك.  
 
* في الإصدار أندرويد 3.0 وما بعده، تُعرض الأزرار بالترتيب العكسي على الأجهزة التي تستخدم القالب Holo.  
 
* في الإصدار أندرويد 3.0 وما بعده، تُعرض الأزرار بالترتيب العكسي على الأجهزة التي تستخدم القالب Holo.  
=== ملاحظات خاصة بمنصة ويندوز ===  
+
==== ملاحظات خاصة بمنصة ويندوز ====  
* على منصة ويندوز، يُبنى مربع الطلب بلغة html بسبب عدم وجود واجهة برمجية أصلية لهذا الغرض.  
+
* على منصة ويندوز، يُبنى مُربع الطلب بلغة html بسبب عدم وجود واجهة برمجية أصلية لهذا الغرض.  
  
==navigator.notification.beep==  
+
===<code>navigator.notification.beep</code>===  
  
يطلق الجهاز صوت تنبيه (صافرة).  
+
عند تنفيذ هذا التابع، يطلق الجهاز صوت تنبيه (صافرة).  
<syntaxhighlight lang="javascript">navigator.notification.beep(times);‎</syntaxhighlight>  
+
<syntaxhighlight lang="javascript">navigator.notification.beep(times);‎</syntaxhighlight>
* '''times''': عدد مرات تكرار الصافرة. (عدد)  
+
 
=== مثال ===  
+
==== المعاملات ====
<syntaxhighlight lang="javascript">// Beep twice!
+
* <code>times</code>: عدد مرات تكرار الصافرة (عدد).
 +
==== مثال ====  
 +
<syntaxhighlight lang="javascript">// إطلاق صافرتين
 
navigator.notification.beep(2);‎</syntaxhighlight>  
 
navigator.notification.beep(2);‎</syntaxhighlight>  
=== المنصات المدعومة ===  
+
==== المنصات المدعومة ====  
 
*أندرويد  
 
*أندرويد  
 
*Browser  
 
*Browser  
 
*iOS  
 
*iOS  
 
*ويندوز  
 
*ويندوز  
===ملاحظات خاصة بمنصة أندرويد ===  
+
====ملاحظات خاصة بمنصة أندرويد ====  
* يطلق أندرويد النغمة الافتراضية '''Notification ringtone''' المحددة في الإعداد '''Settings/Sound & Display'''.
+
* يطلق أندرويد النغمة الافتراضية <code>Notification ringtone</code> المحددة في الإعداد <code>Settings/Sound & Display</code>.
 +
 
 +
== أنظر أيضا ==
 +
* [[Cordova/plugins|دليل تطوير الإضافات في كوردوفا]]
 +
* صفحة [[Cordova/events|الأحداث]].
 +
* صفحة الإضافة [[Cordova/cordova plugin file|cordova_plugin_file]]
 +
 
 
==مصادر==
 
==مصادر==
 
*[https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-dialogs/index.html صفحة cordova-plugin-dialogs في توثيق كوردوفا الرسمي.]
 
*[https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-dialogs/index.html صفحة cordova-plugin-dialogs في توثيق كوردوفا الرسمي.]

مراجعة 15:36، 14 ديسمبر 2018

توفر هذه الإضافة إمكانية الوصول إلى بعض مربعات الحوار الأصلية عبر الكائن العام navigator.notification.

على الرغم من أن هذا الكائن مربوط بالنطاق العام للكائن navigator، إلا أنه لن يكون متوفرًا إلا بعد إطلاق الحدث deviceready.

document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
    console.log(navigator.notification);
}

التثبيت

يمكن تثبيت هذه الإضافة عبر الأمر:

cordova plugin add cordova-plugin-dialogs

التوابع

navigator.notification.alert

يُظهر التابع alert مربع حوار (dialog box) أو مربع تنبيه (alert box) مخصص. معظم تقديمات (implementations) كوردوفا لهذا التابع تستخدم مربع حوار أصلي لهذه الميزة، لكن بعض المنصات تستخدم دالة المتصفح alert، والتي تكون عادةً أقل قابلية للتخصيص.

navigator.notification.alert(message, alertCallback, [title], [buttonName])

المعاملات

  • message: رسالة مربع الحوار (سلسلة نصية)
  • alertCallback: دالة استجابة (Callback) تُستدعى عند إنهاء مربع التنبيه (alert dialog). (دالة)
  • title: عنوان مربع الحوار (سلسلة نصية، اختياري، القيمة الافتراضية هي Alert)
  • buttonName: اسم الزر. (سلسلة نصية، اختياري، القيمة الافتراضية هي OK)

مثال

function alertDismissed() {
    // افعل شيئا ما
}
navigator.notification.alert(
    'You are the winner!',  // الرسالة
    alertDismissed,         // دالة الاستجابة
    'Game Over',            // العنوان
    'Done'                  // اسم الزر
);

المنصات المدعومة

  • أندرويد
  • Browser
  • iOS
  • ويندوز

navigator.notification.confirm

يعرض هذا التابع مربع تأكيد (confirmation dialog box) قابل للتخصيص.

navigator.notification.confirm(message, confirmCallback, [title], [buttonLabels])

المعاملات

  • message: رسالة مربع الحوار (سلسلة نصية)
  • confirmCallback: دالة استجابة (Callback) تُستدعى مع فهرس الزر الذي ضغط عليه المستخدم (1 أو 2 أو 3) أو عند إنهاء مربع الحوار دون الضغط على أي زر (0). (دالة)
  • title: عنوان مربع الحوار (سلسلة نصية، اختياري، القيمة الافتراضية هي Confirm)
  • buttonLabels: مصفوفة من السلاسل النصية تحدد تسميات (labels) الأزرار. (مصفوفة، اختياري، القيمة الافتراضية هي [OK,Cancel])

confirmCallback

تُنفّذ دالة الاستجابة confirmCallback عندما يضغط المستخدم على أحد الأزرار في مربع التأكيد.

تأخذ هذه الدالة الوسيط buttonIndex (عدد)، والذي يمثل فهرس الزر المضغوط (تذكر أن الفهرسة تبدأ بالعدد واحد، وبالتالي فالقيم الممكنة هي 1، 2، 3، إلخ).

مثال

function onConfirm(buttonIndex) {
    alert('You selected button ' + buttonIndex);
}
navigator.notification.confirm(
    'You are the winner!', // الرسالة
     onConfirm,            // دالة الاستجابة التي ستُستدعى مع فهرس الزر المضغوط
    'Game Over',           // العنوان
    ['Restart','Exit']     // اسم الزر
);

المنصات المدعومة

  • أندرويد
  • Browser
  • iOS
  • ويندوز

ملاحظات خاصة بمنصة أندرويد

  • يدعم أندرويد ثلاثة أزرار كحد أقصى، ويتجاهل الأزرار الإضافية.

ملاحظات خاصة بمنصة ويندوز

  • على منصتي ويندوز 8 و8.1، ليس من الممكن إضافة أكثر من ثلاثة أزرار إلى نُسخة (instance‏) MessageDialog.
  • على منصة Windows Phone 8.1، لا يمكن إظهار مربع حوار بأكثر من زرين.

navigator.notification.prompt

يعرض هذا التابع مربع حوار أصلي أكثر قابلية للتخصيص من دالة المتصفح prompt.

navigator.notification.prompt(message, promptCallback, [title], [buttonLabels], [defaultText])

المعاملات

  • message: رسالة مربع الحوار (سلسلة نصية)
  • promptCallback: دالة استجابة (Callback) تُستدعى مع فهرس الزر الذي ضغط عليه المستخدم (1 أو 2 أو 3) أو عندما يتم إنهاء مربع الحوار دون الضغط على أيِّ زر (0). (دالة)
  • title: عنوان مربع الحوار (سلسلة نصية) (اختياري، القيمة الافتراضية هي Prompt)
  • buttonLabels: مصفوفة من السلاسل النصية التي تحدد تسميات الأزرار (مصفوفة، اختياري، القيمة الافتراضية هي ["OK","Cancel"])
  • defaultText: القيمة الافتراضية لمربع الإدخال textbox‏ (سلسلة نصية، اختياري، القيمة الافتراضية: "")

promptCallback

تُنفذ دالة الاستدعاء promptCallback عندما يضغط المستخدم على أحد الأزرار في مربع الطلب (prompt dialog box‏). يحتوي الكائن results الممرّر إلى دالة الاستجابة على الخاصيات التالية:

  • buttonIndex: فهرس الزر المضغوط (عدد)، تذكر أن الفهرس يبدأ من العدد واحد، وبالتالي فإن القيم الممكنة هي 1 و 2 و 3، إلخ.
  • input1: النص المُدخل في مربع الطلب (سلسلة نصية).

مثال

function onPrompt(results) {
    alert("You selected button number " + results.buttonIndex + " and entered " + results.input1);
}
navigator.notification.prompt(
    'Please enter your name',  // الرسالة
    onPrompt,                  // دالة الاستجابة المراد استدعاؤها
    'Registration',            // العنوان 
    ['Ok','Exit'],             // اسم الزر
    'Jane Doe'                 // النص الافتراضي
);

المنصات المدعومة

  • أندرويد
  • Browser
  • iOS
  • ويندوز

ملاحظات خاصة بمنصة أندرويد

  • يدعم أندرويد ثلاثة أزرار كحد أقصى، ويتجاهل ما زاد عن ذلك.
  • في الإصدار أندرويد 3.0 وما بعده، تُعرض الأزرار بالترتيب العكسي على الأجهزة التي تستخدم القالب Holo.

ملاحظات خاصة بمنصة ويندوز

  • على منصة ويندوز، يُبنى مُربع الطلب بلغة html بسبب عدم وجود واجهة برمجية أصلية لهذا الغرض.

navigator.notification.beep

عند تنفيذ هذا التابع، يطلق الجهاز صوت تنبيه (صافرة).

navigator.notification.beep(times);

المعاملات

  • times: عدد مرات تكرار الصافرة (عدد).

مثال

// إطلاق صافرتين
navigator.notification.beep(2);

المنصات المدعومة

  • أندرويد
  • Browser
  • iOS
  • ويندوز

ملاحظات خاصة بمنصة أندرويد

  • يطلق أندرويد النغمة الافتراضية Notification ringtone المحددة في الإعداد Settings/Sound & Display.

أنظر أيضا

مصادر