当前位置: 首页 > 知识库问答 >
问题:

Phonegap事件未触发

郜玉石
2023-03-14

我正在为android创建一个phonegap应用程序,并想使用一些phonegap事件,如“恢复”、“暂停”、“后退按钮”等,但除了“deviceready”事件外,这些事件都不会被触发。以下是我的javascript代码,请检查我是否犯了任何错误:

function onLoad() {
            document.addEventListener("deviceready", onDeviceReady, false);
        }

        // device APIs are available
        //
        function onDeviceReady() {
            alert("Device Ready");
            document.addEventListener("resume", onResume, false);
            document.addEventListener("backbutton", onBackKeyDown, false);
        }

        // Handle the resume event
        //
        function onResume() {
            setTimeout(function() {
            alert("onResume");
            }, 0);
        }

        function onBackKeyDown() {
            // Handle the back button
            setTimeout(function() {
            alert("onBackKeyDown");
            }, 0);
        }

“ondeviceredy()”函数中的警报正在工作。

请帮忙,提前谢谢。

共有1个答案

萧英光
2023-03-14

您应该尝试/检查的事项:

1) 在HTML上是否调用onLoad()?

2) 在HTML上,您是否引用了js?

<!DOCTYPE html>
<html>
    <head>
    <title>Device Ready Example</title>

    <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
    <script type="text/javascript" charset="utf-8" src="example.js"></script> //(2)
    </head>
    <body onload="onLoad()"> //(1)
    </body>
</html>

3) 在JS上,将事件侦听器onDeviceReady置于onLoad()之外

document.addEventListener("deviceready", onDeviceReady, false);
function onLoad() {}
function onDeviceReady() {
  alert("Device Ready");
  document.addEventListener("resume", onResume, false);
  document.addEventListener("backbutton", onBackKeyDown, false);
}
 类似资料:
  • 问题内容: 我有3个文件: js_json.js->用于我的json代码 javascript.js->用于我的javascript函数 index.php 这里的代码为: 这是我的代码: 这里的代码: 我的问题是: 当我单击链接“ Hola Test 1”时,它将起作用并显示消息。问题是,在单击选择选项之后,出现了链接“ Hola Test”,然后单击该链接(“ Hola Test”),该消息没

  • 问题内容: 我有一个带有一列复选框的GridView(GridView的其余部分正在从数据库中填充)。我正在使用AJAX执行不同的功能,并且想知道我是否只是在正确的位置调用了OnCheckedChanged事件。是否应该将其包装在某种UpdatePanel中?我对这一切的工作方式仍然很陌生…基本上,我的目标是在选中复选框后更改数据库中的位值。我知道该怎么做的逻辑,我只是​​不知道我是否以正确的方式

  • 我已经在Flink中实现了CEP模式,它按预期工作连接到本地Kafka代理。但是当我连接到基于集群的云kafka设置时,Flink CEP不会触发。 我正在使用AscendingTimestampExtractor, 我也收到警告消息, AscendingTimestampExtractor:140-违反时间戳单调性:1594017872227 而且我也尝试过使用Assignerwith周期水印和

  • 我在Flink SQL中使用了CEP模式,它按照预期连接到Kafka broker。但是当我连接到基于集群的云kafka设置时,Flink CEP没有触发。以下是我的sql: 然后我以json格式发送消息,如 在 flink Web ui 中,水印工作精细 flink Web ui 我运行我的cep sql: 每个Kafka消息,connect_ 这是另一个仍然不起作用的cep sql。并且age

  • 我已经与celledit约会,ajax事件不会在单元格编辑时触发。事件监听器不会被调用。谢谢。 bean侦听器方法

  • 问题内容: 我有两个Redis客户端,在一个文件中,我有一个简单的脚本设置并删除了Redis密钥: 在第二个文件中,我有一个Redis客户端充当订户: 关键的“占位符”已设置,那么是否有充分的理由使我在“消息”处理程序中未获得任何输出? 问题答案: 您忘记了订阅用户客户端订阅特定的频道。此外,如果要监视所有事件,则需要使用基于模式的订阅。 您可能想要执行以下操作(未测试): 请参阅Redis文档和