[英]JQuery - how to get the app object from a button click function
在我的 javascript 文件中,我定義了一個應用程序對象,該對象采用一個初始化函數,該函數在通過 JQuery ready
文檔時觸發。
$(document).ready(function() {
console.log("JQuery ready");
app.initialize();
});
該應用程序定義為
var app = {
_GPS_ENABLED: false,
initialize: function() {
var self = this;
// deviceready Event Handler
$(document).on('deviceready', function() {
... ...
// BIND A CLICK EVENT TO A FUNCTION DEFINED IN A LATER STEP
$('#isGPSenabled').on("click", self.isGPSenabled);
... ...
});
},
isGPSenabled: function() {
cordova.plugins.diagnostic.isGpsLocationEnabled(function(enabled) {
// HERE I NEED TO ACCESS THE "APP" ATTRIBUTE "_GPS_ENABLED"
._GPS_ENABLED = enabled; // HOW CAN I ACCESS THE _GPS_ENABLED ATTRIBUTE ON APP
});
}
}
HTML 部分有:
<button id = "isGPSenabled">IS GPS ENABLED</button>
如何從附加到按鈕的功能訪問應用程序的屬性?
以前,我通過對象本身的名稱來引用該對象。 我認為這是我曾經看到的一種模式,當時可以滿足我的需求。 沒有真正考慮過積極或消極的一面,但它從未在以前的工作中給我帶來任何問題。
下面是一個示例來演示:
const app = { isEnabled: null, init: () => { app.isEnabled = false; }, toggleEnabled: () => { app.isEnabled = !app.isEnabled; }, displayEnabled: () => { console.log('isEnabled?:', app.isEnabled); } } app.displayEnabled(); // null app.init(); app.displayEnabled(); // false app.toggleEnabled(); app.displayEnabled(); // true
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.