Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > jQuery
jQuery Forum d'entraide sur le framework jQuery. Avant de poster : Tutoriels jQuery, FAQ jQuery, Tous les tutoriels JavaScript, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/02/2012, 20h59   #1
Invité de passage
 
Inscription : janvier 2011
Messages : 5
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 5
Points : 1
Points : 1
Par défaut animation avec jquery

Bonsoir
(je ne sais pas si je suis bien dans la bonne section n’hésite pas a me le dire.)

Je m'appel Jérôme et j'ai un petit souci avec une animation que j'ai créer en effet j'aimerai que mon animation s'adapte a l’écran de la personne.

C'est quelque chose de récurrents sur le forum ce genre de demande mon souci n'est pas vraiment l'adaptation c plus le faite que chaque explorateur internet montre l'animation a sa façon donc pour régler ce souci j'ai créer une règle pour adapter mon animation a la résolution.

Pour être plus clair:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
 
$(document).ready(function() {
$.browser.chrome = /chrome/.test(navigator.userAgent.toLowerCase());
$.browser.msie = /msie/.test(navigator.userAgent.toLowerCase());
 
if(screen.width==1920||screen.height==1080){
	/* animation*/
	if ($.browser.msie) {
	$(".trianglegauche").animate({left:"510px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	$(".triangledroite").animate({right:"510px"},{queue:false, duration:4000, easing:'easeOutBounce'});
		}
	else if($.browser.mozilla){
	$(".trianglegauche").animate({left:"500px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	$(".triangledroite").animate({right:"500px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	}
	else if($.browser.chrome){
	$(".trianglegauche").animate({left:"490px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	$(".triangledroite").animate({right:"490px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	}
	else if($.browser.opera){
	$(".trianglegauche").animate({left:"498px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	$(".triangledroite").animate({right:"498px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	}
	/* fin animation*/
 
}
});
Mon animation marche très bien pour la résolution 1920 par 1080 pour tout les explorateur.

Mais si je rajoute :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
else if (screen.width==1440||screen.height==900){
	/* triangle arrivant de la droite*/
	if ($.browser.msie) {
	$(".trianglegauche").animate({left:"50px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	$(".triangledroite").animate({right:"510px"},{queue:false, duration:4000, easing:'easeOutBounce'});
		}
	else if($.browser.mozilla){
	$(".trianglegauche").animate({left:"30px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	$(".triangledroite").animate({right:"500px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	}
	else if($.browser.chrome){
	$(".trianglegauche").animate({left:"490px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	$(".triangledroite").animate({right:"490px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	}
	else if($.browser.opera){
	$(".trianglegauche").animate({left:"498px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	$(".triangledroite").animate({right:"498px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	}
	/* fin triangle arrivant de la droite*/
 
}
 
});
donc code complet :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
$(document).ready(function() {
$.browser.chrome = /chrome/.test(navigator.userAgent.toLowerCase());
$.browser.msie = /msie/.test(navigator.userAgent.toLowerCase());
 
if(screen.width==1920||screen.height==1080){
	/* triangle arrivant de la droite*/
	if ($.browser.msie) {
	$(".trianglegauche").animate({left:"510px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	$(".triangledroite").animate({right:"510px"},{queue:false, duration:4000, easing:'easeOutBounce'});
		}
	else if($.browser.mozilla){
	$(".trianglegauche").animate({left:"500px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	$(".triangledroite").animate({right:"500px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	}
	else if($.browser.chrome){
	$(".trianglegauche").animate({left:"490px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	$(".triangledroite").animate({right:"490px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	}
	else if($.browser.opera){
	$(".trianglegauche").animate({left:"498px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	$(".triangledroite").animate({right:"498px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	}
	/* fin triangle arrivant de la droite*/
 
}
 
else if (screen.width==1440||screen.height==900){
	/* triangle arrivant de la droite*/
	if ($.browser.msie) {
	$(".trianglegauche").animate({left:"50px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	$(".triangledroite").animate({right:"510px"},{queue:false, duration:4000, easing:'easeOutBounce'});
		}
	else if($.browser.mozilla){
	$(".trianglegauche").animate({left:"30px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	$(".triangledroite").animate({right:"500px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	}
	else if($.browser.chrome){
	$(".trianglegauche").animate({left:"490px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	$(".triangledroite").animate({right:"490px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	}
	else if($.browser.opera){
	$(".trianglegauche").animate({left:"498px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	$(".triangledroite").animate({right:"498px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	}
	/* fin triangle arrivant de la droite*/
 
}
 
});
mes modification marche pour la resolution 1440 sauf (deviné pour qui) ie et opera, avec une résolution de 1440 il ne prend pas compte des valeur que je change pour :
Code :
1
2
3
4
	if ($.browser.msie) {
	$(".trianglegauche").animate({left:"50px"},{queue:false, duration:4000, easing:'easeOutBounce'});
	$(".triangledroite").animate({right:"510px"},{queue:false, duration:4000, easing:'easeOutBounce'});
		}
peux importe les valeurs que je mets pour le left sa change rien par contre si je remonte pour la résolution de 1920 et je change la valeur de if($.browser.msie) ...

il prend en compte pour la résolution 1440 la modification pour une résolution 1920 bref pour ie et opera une résolution 1440=1920 ... donc comment faire pour que ie et opera prenne vraiment en compte la veritable résolution c'est a dire 1440 et non 1920.
merci d'avance pour votre aide.
baka54 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/02/2012, 12h12   #2
Rédacteur
 
Avatar de danielhagnoul
 
Homme Daniel Hagnoul
Étudiant perpétuel
Inscription : février 2009
Messages : 3 221
Détails du profil
Informations personnelles :
Nom : Homme Daniel Hagnoul
Âge : 61
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant perpétuel
Secteur : Enseignement

Informations forums :
Inscription : février 2009
Messages : 3 221
Points : 6 767
Points : 6 767
Bonjour

L'usage de jQuery.browser est déconseillé, c'est un "truc" ancien qui ne fonctionne pas correctement et qui va être supprimé de l'API jQuery. Le "sniffing" d'un navigateur est fortement déconseillé et donne des résultats aléatoires.

On utilise maintenant les "Media Queries" : http://www.w3.org/TR/css3-mediaqueries/
__________________

FAQ jQuery

Mon cahier d’exercices sur jQuery & Co

Si un message vous a aidé ou vous semble pertinent, votez pour lui !
danielhagnoul est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/02/2012, 12h28   #3
Invité de passage
 
Inscription : janvier 2011
Messages : 5
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 5
Points : 1
Points : 1
Merci pour votre réponse, en effet je viens de constaté les aléa du $.browser. et je cherchait une alternative, merci pour la doc je viens de jeter un rapide coup d’œil et je suis tombé sur :

Code :
@media screen and (device-aspect-ratio: 1280/720) {}
je pense que ceci est ma solution a mon problème.

Ou sinon je vais faire d'une autre manière, imposer une taille du body a 768px en width et même si l'animation ne diminuerai pas lorsqu'on réduit la fenêtre au moins elle sera visible sur tout les explorateurs sans que chacun fait à sa sauce.

En tout cas merci pour la solution je vais la tester, où sinon sa pourra me servir pour plus tard.
baka54 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h28.


 
 
 
 
Partenaires

Hébergement Web