我正在开发一个Kiosk Touch Screen应用程序,使用JQuery.keypad插件,并注意到一些主要的性能问题。如果你快速连续地点击多个按钮,CPU就会被锁定,点击的按钮跟不上点击的速度,有些按钮的按下甚至会丢失。在我的dev机器上,这不是很明显,但在Kiosk本身有1gig的内存时,这是痛苦的。
在http://keith-wood.name/keypad.html#inline上尝试演示键盘时,有多个目标的键盘(我的就是这种情况)也有完全相同的问题。
有没有人对我们如何改进这一点有什么建议?Kiosk只在Firefox中运行,所以特定的东西可以工作。我使用的是jquery.keypad的1.2.1版本,刚刚升级到了1.4.2版本。
发布于 2010-04-23 21:10:02
看来基思·伍德在jQuery论坛上成功了。
http://forum.jquery.com/topic/jquery-keypad-performance-issues
所发生的事情是对键盘不断被重新创建的输入的关注。非常简单的解决方案是仅在小键盘目标改变时重新创建小键盘。
使用如下代码:
$('.inlineTarget').focus(function() {
keypadTarget = this;
$('#inlineTargetKeypad').keypad('change', {target: this});
});应更改为以下内容以修复问题:
var keypadTarget = null;
$('.inlineTarget').focus(function() {
if (keypadTarget != this) {
keypadTarget = this;
$('#inlineTargetKeypad').keypad('change', {target: this});
}
});留下一个答案,基思,分数就归你了。
https://stackoverflow.com/questions/2692781
复制相似问题