4

我正在尝试为移动设备制作我的第一个 Web 应用程序。是否可以在 android 上捕获“摇晃事件”?

我正在查看 jquery moble 库,但没有抖动事件或加速度计事件。

是否可以基于抖动事件进行 Ajax 调用???

谢谢阿曼。

4

4 回答 4

3

伙计,也许插件可以做到这一点,但我认为只有使用 JqueryMobile 才能获得震动事件。

以下是 Jquery 事件列表:http: //jquerymobile.com/demos/1.0a2/experiments/api-viewer/index.html

于 2011-01-27T13:30:07.323 回答
3

Shake.js 提供了对一个震动事件的支持,它应该可以很容易地实现所需的功能:

https://github.com/alexgibson/shake.js

于 2012-04-20T16:33:30.547 回答
2

(安卓)

您可以通过将 Javascript 接口附加到您的 WebView 来编写启动 onLoad 的“事件代理”,这是一些伪代码:

    [...]

    mWebView.getSettings().setJavaScriptEnabled(true);
    mWebView.getSettings().setDomStorageEnabled(true);
    mWebView.addJavascriptInterface(new JavaScriptInterface(), "android");
    mWebView.loadUrl("file:///android_asset/www/index.html");

}

final class JavaScriptInterface {
    JavaScriptInterface () { }  
    public void startEventProxy() {
        // capture and pass shake events to javascript
    }   
}

(苹果手机)

您可以与 Safari Mobile 中提供的 Device Motion API 进行交互。

http://plugins.jquery.com/project/tilt

于 2011-05-03T01:23:01.343 回答
1

我不是这方面的专家,但我认为您无法通过移动浏览器访问加速度计、指南针和其他“本地”事件。如果你想用 javasrcipt、css 和 HTML 制作一个本地应用程序,你可以查看phonegaptitaniumrhodes

编辑:罗德是红宝石。它类似于 ruby​​ on rails。所以你使用 ruby​​、javascript、HTML 和 css。

然后你就可以访问所有你想要的事件。

阅读本文了解更多信息移动应用跨平台开发挑战:PhoneGap vs. Titanium v​​s. Rhodes

于 2011-01-27T13:28:50.083 回答