jquery - 检测文本框内容是否已更改的电池友好方式

标签 jquery power-management mobile-browser

This question's answers建议使用 window.setInterval 作为立即检测(无需等待模糊)文本框内容是否更改的唯一可靠方法,因为某些文本框更改可能通过按键以外的事件发生。

即使在我的台式电脑上,我也看到 IE 或 Firefox 通过 500 毫秒的 setInterval 运行一个相对简单的处理程序检查几个文本框,从而消耗了相当大的 CPU 百分比。这在台式电脑上没问题,但在笔记本电脑和手机上会损害电池生命周期。

使用 jquery 最大限度地减少 CPU 利用率但仍然提供快速更新以响应文本框的更改(包括剪贴板粘贴、ajax 更新等,而不仅仅是按键)的好方法是什么?

最佳答案

onBlur 是指您离开某个对象但不一定对其进行更改。

onChange 仅在您离开已更改其值的对象后才会调用。

其中之一应该可以满足您的需求。如果没有,每次字符更改都会触发各种按键事件。

如果不这样做,那么定期更新单个 JavaScript 变量可能不会像您所说的那样占用那么多处理能力,除非您的选择器导致一些奇怪的 DOM 行为。

试试这个:通过 id 引用元素,并将该引用存储在 js 变量中。通过此引用更新和更改另一个变量是一个微不足道的操作。

关于jquery - 检测文本框内容是否已更改的电池友好方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8976340/

相关文章:

javascript - Fancybox - 当到达最后一张图片时滑动到另外五张

许多插件的 JQuery 性能?

android - 降低 Android 设备上的蓝牙信号强度

linux - Linux 中的进程或线程级电源监控

android - 如何在插入时防止Android设备进入休眠状态

javascript - 谷歌日历事件不显示到fullcalendar本地主机

javascript - 如何使用javascript在打印中仅获取内容特定的高度和宽度

android - 作为网站启动的移动应用程序

javascript - 为什么 Opera Mini 有时会点击错误的链接

html5-audio - 移动浏览器是否通过 HTML5 音频标签发送 httpOnly cookie?