Использование setTimeout для повышения скорости отклика

Когда мы стремимся улучшить производительность страницы, я не слышал об одном методе, о котором я упоминал ранее, - это использование setTimeout для предотвращения задержки отрисовки страницы в javascript.

Например, представьте себе, что у нас есть особенно трудоемкий фрагмент jQuery, встроенный в html:

$('input').click(function () {
    // Do stuff
});

Если этот код является встроенным, мы задерживаем воспринимаемое завершение страницы, в то время как часть jquery занята прикреплением обработчика кликов к каждому входу на странице.

Было бы разумно вместо этого создать новый поток:

setTimeout(function() {
    $('input').click(function () {
        // Do stuff
    })
}, 100);

] Единственный недостаток, который я вижу, это то, что теперь больше шансов, что пользователь щелкнет элемент до того, как будет прикреплен обработчик щелчка. Однако этот риск может быть приемлемым, и у нас все равно есть степень этого риска, даже без setTimeout.

Прав ли я или нет?

9
задан cbp 25 February 2011 в 05:45
поделиться