Проблемы с производительностью jQuery.keypad - PullRequest
1 голос
/ 22 апреля 2010

Я работаю над приложением Kiosk Touch Screen и использую плагин JQuery.keypad и замечаю некоторые серьезные проблемы с производительностью.Если вы быстро нажмете несколько кнопок, процессор будет привязан, нажатия кнопок не поспевают за нажатием, а некоторые нажатия даже теряются.На моем компьютере разработчика это не так заметно, но на самом киоске с 1 гигабайтом оперативной памяти это больно.

Попробовать демонстрационную клавиатуру на http://keith -wood.name / keypad.html #inline тот, у которого несколько целей (как в случае с моими), имеет точно такие же проблемы.

У кого-нибудь есть какие-либо предложения о том, как мы могли бы улучшить это?Киоск работает в Firefox только для того, чтобы что-то конкретное сработало.Я использую v1.2.1 jquery.keypad и только что обновил до v1.4.2 jquery.

1 Ответ

0 голосов
/ 23 апреля 2010

Похоже, что Кит Вуд проходил через форумы 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});
    }
});

Оставь ответ, Кит, и очки достанутся тебе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...