我正在为 Android 操作系统开发一个 PhoneGap 应用程序。我希望我的应用程序设计得尽可能可扩展。因此,我将所有模块都编写为 plgin,将它们保存在一张地图中,然后我想在我的 HTML 页面中使用它们。我在 MyJS.js 文件中编写了这段代码:
var map = {};
// Allow jQuery to cash the cordova.js
$.ajaxSetup({ cache: true});
$.getScript("cordova-2.6.0.js",function(){
var AccelerometerSensor = {
accelJSONObj:cordova.require("cordova/plugin/Acceleration"),
accelPGAPSens:cordova.require("cordova/plugin/accelerometer"),
color:'#FF8C00',
sensorID:'Accelerometer',
// Flag indicates whether this sensor type is supported by the device or not.
availability:null,
isAvailable:function() {
accelPGAPSens.getCurrentAcceleration(
function(x){availability = true;},
function(){availability = false;});
},
}
})
.done(function(script, textStatus) {
map["Accelerometer"] = this.AccelerometerSensor;
alert('done');
})
.fail(function(jqxhr, settings, exception) {
alert('fail');
});
现在我想调用 isAvailable 函数,所以我写了这段代码:
map["Accelerometer"].isAvailable()
但我得到了一个类型错误:
“无法调用未定义的方法‘isAvalable’……”
我究竟做错了什么?谁能告诉我我必须做什么?
谢谢!!!