如果在其他地方被问过我道歉,我看了但不知道我在做什么的名字,我找不到任何东西。
无论如何,代码如下:
function alertTypeOptions(AlertType, AlertOptions) {
navigator.notification.AlertType(AlertOptions);
}
此代码适用于phonegap / cordova应用程序。
基本思想是将函数传递给两个变量,这些变量用于执行适当的方法。例如,alertTypeOptions('beep','3')或alertTypeOptions('vibrate','2000')。这(应该)播放默认提示音3次或振动手机2秒钟。
我目前收到以下错误:
02-21 15:36:07.185: E/Web Console(7206): Uncaught TypeError:
Object #<Object> has no method 'AlertType'
at file:///android_asset/www/res/scripts.js:181
显然,该函数目前只是使用alertType变量而不是变量。
有没有办法让它优雅地运作?目前我唯一的想法是使用带有AlertType的switch语句作为检查。
杰克
答案 0 :(得分:0)
您似乎想使用bracket notation:
访问您的功能navigator.notification[AlertType](AlertOptions);
或者更确切地说,如果我信任this documentation并且AlertOptions
是一个数组:
navigator.notification[AlertType].apply(navigator, AlertOptions);