Lorsque j'essaie d'afficher un élément div avec jQuery, j'ai cette erreur:
[23:50:35.971] TypeError: p.easing[this.easing] is not a function @ file:///D:/html5%20puzzle/jquery.js:2
La fonction pertinente est la suivante:
function showWithAnimation(){
console.log('animation called');
$('#popup').show();
$("#popup").css({"top": "30%", "left": "30%"})
.animate({top:(($(window).height()/2)-($('#popup')
.outerHeight()/2))-70}, 1000, 'easeOutBounce')
.show();
}
La fonction est chargée d'afficher le div avec une animation de rebond, cependant, le div est affiché mais sans effet de rebond.
ÉDITER:
J'inclus les bibliothèques jQuery et jQueryUI à partir d'un CDN comme celui-ci (dans l'ordre):
<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js'></script>
<script src='http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/jquery-ui.min.js'>
</script>
javascript
jquery
html
Malloc
la source
la source
<script src='http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/jquery-ui.min.js'></script>
est-ce celui-ci? Ou dois-je inclure un autre fichier?Pour ceux qui ont une version personnalisée de l'interface utilisateur jQuery (bower par exemple), ajoutez le noyau d'effets situé dans
..\jquery-ui\ui\effect.js
.la source
import "jquery-ui/ui/effects/effect-slide"
. Merci pour la pointe, Tim!Y compris cela a fonctionné pour moi.
Veuillez inclure la ligne mentionnée ci-dessous dans la section.
la source
Le plugin Jquery easing a renommé leurs noms de fonction d'effet à partir de la version 1.2. Si vous avez du javascript en fonction de l'assouplissement et qu'il n'appelle pas le bon nom d'effet, cela générera cette erreur.
la source
J'ai eu cette erreur aujourd'hui en essayant d'initier un effet de glissement sur un div. Grâce à la réponse de 'Je déteste Lazy' ci-dessus (que j'ai voté pour), je suis allé à la recherche d'un script d'interface utilisateur jQuery personnalisé, et vous pouvez en fait créer votre propre fichier directement sur le site Web de jQuery ui http: // jqueryui. com / télécharger / . Tout ce que vous avez à faire est de marquer le ou les effets que vous recherchez, puis de les télécharger.
Je cherchais l'effet slide. J'ai donc d'abord décoché toutes les cases à cocher, puis cliqué sur la case à cocher «effet de diapositive» et la page vérifie automatiquement les autres composants nécessaires au fonctionnement de l'effet de diapositive. Très simple.
easOutBounce est un effet d'accélération, pour lequel vous devrez cocher la case 'Effects Core'.
la source
Si vous utilisez Bootstrap, il est également possible que jQuery de Bootstrap, s'il est inclus sous votre balise de script jQuery, écrase votre balise de script jQuery par une autre version. L'inclusion du propre CDN de jQuery et la suppression de la balise de script jQuery fournie par Bootstrap était la seule chose qui fonctionnait pour moi.
la source
Pour tous ceux qui rencontrent cette erreur et que vous avez essayé de mettre à jour les versions et de vous assurer que le noyau d'effets est présent, etc. et vous grattez toujours la tête. Consultez la documentation pour animate () et d'autres syntaxes.
Tout ce que j'ai fait a été d'écrire "Linear" au lieu de "linear" et obtenir le [this.easing] n'est pas une fonction
$ ("# main"). animate ({scrollLeft: '187px'}, 'slow', 'Linear'); //mauvais
$ ("# main"). animate ({scrollLeft: '187px'}, 'lent', 'linéaire'); //bien
la source
J'ai trouvé le problème: n'utilisez pas CDN (cela cause le problème!), Enregistrez plutôt le fichier jquery localement sur votre serveur et le problème est résolu.
la source
L'importation de
jquery.easing
cdn a fonctionné pour moi.Vous pouvez ajouter ce bas de la page Web.
la source