J'ai un certain jQuery je cours sur un cas de test que nous étudions, et il court extrêmement lentement sur nos iPad 2. Cependant, il est rapide et réactif sur nos ordinateurs de bureau et ordinateurs portables. J'ai essayé de supprimer tous les sélecteurs (si possible) et d'utiliser plutôt des références stockées, ce qui n'a pas beaucoup aidé.jQuery en cours d'exécution extrêmement lente sur iPad
Avant que le changement était http://jsfiddle.net/EEGgv/5/ alors après avoir été http://jsfiddle.net/EEGgv/6/
Voici le code jQuery actuel:
$().ready(function() {
var $varSelected = 'undefined';
var $this = 'undefined';
var varPrev = '';
var varNew = '';
$('.btn').click(function() {
$this = $(this);
if ($varSelected !== 'undefined') {
// Get previous value
varPrev = $varSelected.text();
// Find value we're trying to add
varAdding = $this.attr('value');
if (varAdding == 'Clr') {
varNew = '';
} else {
varNew = varPrev + varAdding;
}
// Write new value
$varSelected.text(varNew);
}
});
$('.qtyBox').click(function() {
$this = $(this);
// Check if we've previously had a selected box
if ($varSelected === 'undefined') {
// Didn't have one before -- nothing special
} else {
// Had one selected. We need to unselect it.
$varSelected.removeClass('Selected');
}
// Select the one we have now
$varSelected = $this;
// Add formatting
$this.addClass('Selected');
// Clear value
varNew = '';
$this.text(varNew);
});
});
je le/5/version (pré-références) téléchargés sur http://test.projectdavis.com/test.html alors que le/6/versoin (références) chargé sur http://test.projectdavis.com/test2.html.
Quelqu'un a-t-il un aperçu?
Merci
Quel est exactement lent à ce sujet? le chargement de la page? interagir avec la page? tous les deux? Vous pouvez optimiser un peu en utilisant la délégation d'événement, mais cela ne ferait qu'améliorer l'impact initial, cela n'améliorera pas les interactions avec la page. –
La "lenteur" est ressentie lorsque vous tapez/cliquez sur une case, quand elle exécute la fonction '$ ('. QtyBox'). Click, ainsi que lorsque vous tapez/cliquez sur un bouton pour entrer une quantité, quand elle s'exécute la fonction '$ ('. btn'). click'. – The1nk
@KevinB - Il se charge vraiment bien. Il se peut que le chargement soit lent, mais pas assez lent pour que je le remarque. Lorsque vous appuyez sur/cliquez, les scripts qui s'exécutent sont très lents à répondre. Merci! – The1nk