检测html5移动设备中的晃动

2023-11-22

我目前正在 html5 中构建一个 Web 应用程序,它需要能够检测用户何时摇动手机以及摇动手机的速度。我一直在浏览,但似乎找不到任何如何实现这一点的示例。我知道html5有一个加速度计可以检测手机的方向,但是它如何检测用户摇动手机的速度呢?

我也在我的 iPhone 上测试了它,尽管理想情况下我希望它也能在 Android 设备上运行。想法?例子也很好。谢谢!


shake.js看起来是一个很好的库 - 它提供了一个自定义的“摇动”事件,并且在现代浏览器上受支持。这是一个他们的文档中的示例设置关于如何实施它:

<script src="shake.js"></script>
<script>
var myShakeEvent = new Shake({
    threshold: 15, // optional shake strength threshold
    timeout: 1000 // optional, determines the frequency of event generation
});

// Start listening to device motion
myShakeEvent.start(); 

// Register a shake event listener on window with your callback
window.addEventListener('shake', shakeEventDidOccur, false); 

//function to call when shake occurs
function shakeEventDidOccur () {

    //put your own code here etc.
    alert('shake!');
}
</script>

请注意,当处于不安全的浏览上下文中时,这在某些浏览器中不起作用(例如http://)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

检测html5移动设备中的晃动 的相关文章

  • 计算div中有多少个元素

    我有一个div 里面有span 有没有一种方法可以计算 div 中有多少个元素 然后将其作为值给出 例如 一个 div 中有 5 个跨度 那么它会对其进行计数并发出警报 5 请使用 JavaScript 谢谢 如果你想要后代的数量 你可以使
  • 使用他们的 API 创建一个基本的 MailChimp 注册表单

    我是 MailChimp 的新手 需要一些帮助 通过他们的基本时事通讯注册表单 您只需将一些预先打包的 HTML 嵌入到您的页面中即可 然而 这样做的问题是 单击 提交 会重定向到 MailChimp 页面 我不想重定向到 MailChim
  • 使用 Moment.js 从 ISO 字符串中提取 utcOffset

    使用 moment js 我尝试从 ISO 日期字符串中提取偏移量 以便稍后在格式化纪元时间戳时使用该偏移量 以确保时间戳的转换位于同一时区 即使字符串中的偏移量为 0400 结果始终为0 var currentTime 2015 03 1
  • 在 angularJS 中覆盖模块值/常量的最佳方法

    我用 angularJS 编写了一个模块 封装了所有后端通信 为了获得更大的灵活性 我将 api 前缀作为模块上的常量值 可能是值 因为我没有在配置阶段使用它 所以像 angular module myapp data constant a
  • React:未捕获的引用错误:未定义需求

    我正在阅读 React 教程 http facebook github io react docs animation html http facebook github io react docs animation html 并且我无法
  • 为 Promise 编写循环的正确方法。

    如何正确构造循环以确保满足以下条件承诺电话和被束缚的记录器 log res 通过迭代同步运行 蓝鸟 db getUser email then function res logger log res this is a promise 我尝
  • 节省页面加载时间的提示[重复]

    这个问题在这里已经有答案了 我的问题 削减那些不必要的 kb 并使页面加载速度更快的最佳方法是什么 全部是什么优化实践 编码实践 在js php中 如果执行可以使您的页面更轻 为什么我问这个 我读了这篇关于 jquery js 与 jque
  • 无法将中间件与 Firebase 和 NuxtJS 3 一起使用

    我正在尝试在示例项目中使用 Firebase 身份验证 身份验证按预期工作 但是一旦我想使用中间件来阻止用户访问管理页面或在已经登录的情况下访问登录页面 这是不可能的 我已经尝试了几个小时 但没有任何效果 这是我的package json
  • 如何在 Vue.js 2 中使用事件总线通过自定义事件传递数据

    我在用着Vue js 2 5 x 在我的玩具项目中 我实现了一个事件总线 类似于所示的here https alligator io vuejs global event bus 事件总线在 Vue 原型中全局注册为 eventBus 然后
  • 如何设置第三方 cookie

    我如何设置第三方 cookie 我有要求设置cookie 并且cookie将在访问的网站中启用 就像我在访问cde com或def com或ghi com时在abc com中设置cookie一样 所以设置的cookie将在所有网站上获取 我
  • charset-utf8 和字符实体

    我建议将我的 windows 1252 XHTML 网页转换为 UTF 8 我的编码中有以下字符实体 39 撇号 9658 右指针 9668 左指针 如果我使用编辑器更改字符集并将页面保存为 UTF 8 撇号保留为字符实体 指针被转换为代码
  • Boolean("false") 返回 true..还有其他选择吗?

    我正在使用 jquery 将 true 和 false 字符串写入 data html 属性 但是 当我将 false 写入其中一个属性 然后检查它是否为 false 时 它 会返回 true 我还在网上读到它应该这样做 这真的毫无意义 有
  • 为什么react中的组件需要大写? [复制]

    这个问题在这里已经有答案了 因此 当您声明一个组件以小写首字母进行反应时 它不会显示 也不会引发错误 当您将组件名称大写时 它确实有效 这样的实现是怎样的呢 为了避免与现有的 html 元素发生冲突 还是这是一个错误 var test Re
  • 同源政策目的可疑

    正如我所读到的 同源策略是防止源自 邪恶 域 A 的脚本向 良好 域 B 发出请求 换句话说 跨站点请求伪造 玩了一下我了解到的Access Control Allow Origin标头和CORS据我了解 它允许从好域 B 指定服务器 域
  • 保留以下文本的标题

    我正在使用 css 列计数功能将我的部分分成两列 在一个页面上 我在第一列的底部有一个 h3 标题 在下一列的顶部有一个 p 段落 我想保留该段落的前几句话的标题 我可以将其与整个段落一起包装在使用 inline block 样式的 div
  • javascript捕获文本区域中的粘贴事件

    我目前有一个文本区域 我需要控制已粘贴的文本 本质上 我需要能够将用户想要粘贴到文本区域中的任何内容并将其放入变量中 然后我将计算出他们粘贴文本的位置和字符串的大小 以将其从文本区域中删除 然后最后用我自己的方式处理变量中的文本 我的问题
  • 以特定顺序运行具有效果的 jQuery 函数

    我在 javascript 函数中有一些 jQuery 可以更改页面上的文本并以特定的时间间隔淡入和淡出 我希望这些函数在每个函数完成其效果后按顺序运行 dialogueExchange1 dialogueExchange2 dialogu
  • 为什么转换 new.Date() .toISOString() 会改变时间?

    我正在以两种不同的格式在数据库中插入日期 这是作为日期时间插入 var mydate mydate new Date document getElementById clockinhour value mydate toISOString
  • 使用 Google Visualization,为什么 DataView 内容显示在 ChartRangeFilter 中,而不显示在其关联的 LineChart 中?

    下面的代码应该从 CSV 文件填充 DataView 然后 DataView 被输入到 DashBoard 其中包含绑定在一起的 LineChart 和 ChartRangeFilter 我的问题是 虽然 ChartRangeFilter
  • Page_ClientValidate 正在验证多次。

    我的问题是 验证摘要消息 警报 显示两次 我无法弄清楚原因 请帮忙 这是代码 function validate javascript function if typeof Page ClientValidate function var

随机推荐

  • 用 range() 以相反的顺序打印列表?

    如何生成以下列表range 在Python中 9 8 7 6 5 4 3 2 1 0 Use reversed 函数 高效 因为range实施 reversed reversed range 10 这更有意义 Update list cas
  • 关于 emacs 中的自动完成和 yasnippet

    我在 Emacs 中使用自动完成和 yasnippet 但我对它们的设置感到困惑 我将以下代码放入我的 emacs add to list load path emacs d plugins yasnippet require yasnip
  • 我应该使用 Windows 服务还是 ASP.NET 后台线程?

    我正在 ASP NET 3 5 中编写一个 Web 应用程序 它负责一些基本的数据输入场景 应用程序还有一个组件需要不断轮询一些数据并根据业务逻辑执行操作 实现 轮询 组件的最佳方法是什么 它需要每隔几分钟左右运行一次并检查数据 我过去见过
  • Android模拟器-dns-server使用

    我目前正在努力让 Android 模拟器使用在本地主机 127 0 0 1 上运行的自定义 DNS 服务器 到目前为止 我已经尝试了各种方法试图说服模拟器使用我的 DNS 服务器 但到目前为止还没有成功 最后 它总是归结为以下错误消息 WA
  • “not, and, or, not_eq..”是 C++ 标准的一部分吗? (为什么在代码中可以使用或避免它们?)

    所以它看起来像所有这些 http www cplusplus com reference clibrary ciso646 是c 中的关键字 我的问题是 这是 C 标准的一部分吗 我可以依赖它得到主要编译器的支持吗 我知道 gcc 确实支持
  • 如何在 Bash 中比较点分隔版本格式的两个字符串?

    有没有办法在 bash 上比较这些字符串 例如 2 4 5 and 2 8 and 2 4 5 1 这是一个纯 Bash 版本 不需要任何外部实用程序 bin bash vercomp if 1 2 then return 0 fi loc
  • 在 R 中将 CSV 读取为 data.frame

    我是 R 新手 正在尝试读取 csv 文档显示了一个函数read csv 但是 当我读取文件并检查变量的类型时 它会显示一个列表 文档将其显示为data frame 有人可以解释为什么会这样吗 到目前为止我的代码 mytable lt re
  • 移动设备放大 Google Apps 脚本

    我在 GAS 中制作了一个 400 像素宽的网络应用程序 我希望在加载时缩放以填充移动设备的屏幕 而不是只填充一半屏幕 尽管仍然使用固定的像素宽度 我尝试使用下面的视口代码但没有成功 Google 最近几个月解决了这个问题 并使用 addM
  • OpenSSL 静态库太大,有什么替代方法或方法可以减小其大小?

    我已经使用了 OpenSSL 1 0 的预构建静态库 但它使我的二进制文件太大 在发布模式下将其大小增加了约 800Kb 我不需要 OpenSSL 的大部分功能 例如 BIO 我使用自己的套接字 因此在代码中我只使用几个 SSL XXXXX
  • 如何防止ggplot2中的轴相交

    我正在使用 ggplot2 制作一些对数转换数据的线图 这些数据都有很大的值 在 10 6 和 10 8 之间 由于轴不是从零开始 我不想让它们在 原点 相交 以下是轴当前的样子 我更喜欢从基础图形中获得的东西 但我另外使用geom rib
  • 3D 中两个矩形之间的交集

    为了获得 3D 中两个矩形之间的交线 我将它们转换为平面 然后使用法线的叉积获得交线 然后尝试获得与矩形的每个线段的线交点 问题是这条线平行于三段 并且只与 NAN NAN NAN 中的一条相交 这是完全错误的 你能告诉我我的代码有什么问题
  • TabLayout 的选项卡未显示

    我有一个主要活动 它托管一个片段 该片段又托管一个 TabLayout 带有 ViewPager 显示选项卡栏 但不显示选项卡本身 这是我在主要活动中用于显示主机片段的代码 Fragment fragment new BMITabsFrag
  • 应用程序更新时的警报管理器[重复]

    这个问题在这里已经有答案了 我正在开发一个使用的应用程序AlarmManager对于某些进程 我想问一下我是否在 Playstore 上更新我的应用程序 更新而不是新安装 注册的警报会被取消吗 还将值SharedPreference重置 A
  • 如何从 python 中的 RFC 2822 邮件标头中提取多个电子邮件地址?

    蟒蛇的email模块非常适合解析标头 但是 那To header可以有多个接收者 并且可能有多个To 标头 那么如何拆分每个电子邮件地址呢 我不能用逗号分隔 因为逗号可以被引用 有没有办法做到这一点 演示代码 msg To email pr
  • 在内容脚本中使用 chrome.tabs 或其他 chrome API 时,“无法读取未定义的属性”

    chrome tabs尽管我在权限块中设置了选项卡 但仍返回未定义 permissions tabs http https content scripts matches http https js js myScript js all f
  • custom_require.rb:36:in `require': 没有要加载的文件 -- myapp(LoadError)

    我收到上述错误 我所做的就是安装 rvm 并从 Mac 获得的默认 ruby 更新到 ruby 1 9 2 我的所有宝石都出现在宝石列表中 但我需要在某处指定路径吗 cheers glenno 检查您是否安装了 gemgem list如果没
  • 防止Bootstrap崩溃崩溃

    我有一个 Bootstrap 折叠 标题内有一个按钮 按钮上有clickEvent 我想防止单击按钮时发生崩溃事件 有人有提示吗 这在这里没有帮助 buttonId live click function e e preventDefaul
  • NumPy 中是否提供十进制“dtypes”?

    是十进制数据类型对象 dtypes 在 NumPy 中可用吗 gt gt gt import decimal numpy gt gt gt d decimal Decimal 1 1 gt gt gt s 123 123 23 2323 2
  • 如何在 Flutter 中使用 SQFlite 进行数据库插入

    如何使用 SQFlite 插件将数据插入 Flutter 数据库 有很多解决问题的问题 但我找不到一个可以添加规范答案的问题 我的回答如下 添加依赖项 Open pubspec yaml并在依赖项部分添加以下行 sqflite 1 0 0
  • 检测html5移动设备中的晃动

    我目前正在 html5 中构建一个 Web 应用程序 它需要能够检测用户何时摇动手机以及摇动手机的速度 我一直在浏览 但似乎找不到任何如何实现这一点的示例 我知道html5有一个加速度计可以检测手机的方向 但是它如何检测用户摇动手机的速度呢