Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用Cordova正确处理事件_Javascript_Android_Cordova - Fatal编程技术网

Javascript 如何使用Cordova正确处理事件

Javascript 如何使用Cordova正确处理事件,javascript,android,cordova,Javascript,Android,Cordova,我想知道,在Cordova应用程序中处理ajax请求的正确位置在哪里。我对Cordova(几天前开始)完全陌生,所以我只是通过简单地将ajax代码放入“ajaxHandler.js”文件来实现它。 然后在应用程序的index.html中,我将其加载到正文的末尾: <script type="text/javascript" src="js/ajaxHandler.js"></script> 函数processData();处理服务器返回的数据的方法也在同一文件中

我想知道,在Cordova应用程序中处理ajax请求的正确位置在哪里。我对Cordova(几天前开始)完全陌生,所以我只是通过简单地将ajax代码放入“ajaxHandler.js”文件来实现它。 然后在应用程序的index.html中,我将其加载到正文的末尾:

    <script type="text/javascript" src="js/ajaxHandler.js"></script>
函数processData();处理服务器返回的数据的方法也在同一文件中定义

然而,我试着阅读一些教程,人们似乎将所有应用程序功能集成到自动生成的“index.js”中

例如,我会:

var app = {
    // Application Constructor
    initialize: function() {
        document.addEventListener('deviceready', this.onDeviceReady.bind(this), false);
    },
onDeviceReady: function() {

    console.log(" device ready!");

    $("#sendRequest").click(sendAjaxRequest);


  }
};
//define variables and functions here

function sendAjaxRequest{..function..};

//then call app.initialize

app.initialize();
我的工作方式似乎很好,我喜欢我的方式,因为我可以将代码组织到不同的文件中。例如,我的应用程序中有很多按钮可以打开菜单、切换页面等。我在“interface.js”中处理那些“点击”,我处理请求,就像前面在“ajaxHandler.js”中提到的那样,等等。然后我只是在index.html中加载了body末尾的文件。通过这种方式,代码组织有序,工作愉快


我是否应该将应用程序的所有功能都塞进'index.js'中,如果是,为什么?Cordova的文档没有明确说明“正确”的做事方式。

没有正确的方式。这只是其他所谓开发人员的指导原则。为什么您会触发单击以发出ajax请求?Nirus,您是在谈论“$”(“#sendRequest”)。单击(sendAjaxRequest);”?我正在处理点击而不是触发事件。当您传递某个函数时,例如handler()到.click()与.on('click',handler()相同)。在我的例子中,我在录制按钮时向服务器发送一些json。
var app = {
    // Application Constructor
    initialize: function() {
        document.addEventListener('deviceready', this.onDeviceReady.bind(this), false);
    },
onDeviceReady: function() {

    console.log(" device ready!");

    $("#sendRequest").click(sendAjaxRequest);


  }
};
//define variables and functions here

function sendAjaxRequest{..function..};

//then call app.initialize

app.initialize();