В настоящее время я работаю над мобильным приложением, используя jQuery Mobile и PhoneGap 2.0.0. Приложение представляет собой html-файл с различными элементами div, который представляет экраны приложения, а собственный контейнер используется для отображения экранов с использованием кода javascript.PhoneGap подтверждает функцию обратного вызова
Для нескольких действий я использовал собственное оповещение и подтверждаю, что функции взаимодействуют с пользователем. Например:
function customBeforeMenuItemClick(screen, menuItem) {
if (screen === "APPROVALQUEUE" && menuItem === "Close") {
return (confirm('Do you want to close without submitting changes?'));
}
}
Здесь функция принимает возвращения из подтверждающим всплывающего окна и использует его в другой функции (над которым я не имею никакого контроля), чтобы обработать действие закрытия или не приложение.
Теперь мне нужно изменить заголовок всплывающих окон и подумать о том, как использовать функции Phonegap navigator.notification.alert и подтвердить. Однако эти функции являются асинхронными и выполнение сценария продолжается.
Я пытался использовать метод обратного вызова возвращает правильное логическое, но функцию с помощью подтверждения выпрыгивающее Уже вступил закончил выполнение
function onConfirmClose(button){
return (button == 1);
}
function toClose(){
navigator.notification.confirm("Close?", onConfirmClose,
'Do you want to close', 'yes,no');
}
function customBeforeMenuItemClick(screen, menuItem) {
if (screen === "Start" && menuItem === "Cancel") {
toClose();
}
else {return true;}
}
В этом примере кода Всплывающие загорается на короткое время, прежде чем исчезнуть, когда приложение закрывается после завершения функции toClose().
Я попытался использовать функцию обратного вызова, чтобы установить глобальную переменную, которая будет использоваться для возврата результата всплывающего окна, но это не сработало.
Есть ли способ получить результат навигации.notification.confirm?
Что находится в 'кнопке', когда он приходит в' onConfirmClose'? Кнопка –
- это указатель кнопки, нажатой на уведомлении.confirm (т.е. 1 для «да», 2 для «нет»). Вот документация с сайта Кордовы http://cordova.apache.org/docs/en/2.0.0/cordova_notification_notification.md.html – Khalid
да, я знаю это, но * в вашем коде *, он туда попал? что у него есть? всегда проще вводить доказательства того, что точно не работает –