Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript
JavaScript Forum programmation JavaScript. Lire : Cours JavaScript, FAQ JavaScript, Toutes les FAQ JavaScript et Sources 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 26/12/2010, 14h04   #1
Membre actif
 
Avatar de xess91
 
Homme
Inscription : octobre 2008
Messages : 407
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 29
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : octobre 2008
Messages : 407
Points : 160
Points : 160
Par défaut offsetWidth et offsetHeight sous Chrome et Safari

Bonjour à tous,

Je rencontre un problème sous Chrome et Safari avec offset* voici mon script réduit au minimum :

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
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> 
<head>
<script type="text/javascript">
var Diap =  function()	
	{
	//id de l'élément
	this.actionBar = null ;
	//width de l'élément
	this.actionBarW = null ;
	//height de l'élément
	this.actionBarH = null ;
	//élément
	this.actionBarEl = null ;
	}
 
Diap.prototype.configuration = function()
	{	
	this.actionBarEl = document.getElementById(this.actionBar) ;
	this.actionBarW = this.actionBarEl.offsetWidth ;
	this.actionBarH = this.actionBarEl.offsetHeight ;
 
	alert(this.actionBar+" : "+this.actionBarW+" - "+this.actionBarH) ;
	}
 
</script>
</head>
<body>
<img src="actionBar.gif" alt="" id="actionBar" />
<script type="text/javascript">
var diap = new Diap() ;
 
diap.actionBar = "actionBar" ;
 
diap.configuration() ;
</script>
</body>
</html>
Le alert me renvoie bien l'id "actionBar" mais 0 pour la largeur et la hauteur de mon image. Je ne vois vraiment pas pourquoi d'autant que cela fonctionne sur IE Moz et Opéra et aucune erreur de déclarée dans la console firebug.

De plus j'ai essayé un petit script tout simple celui-ci :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
<html>
<head>
<script type="text/javascript">
function talking()
     {
     alert(document.getElementById('actionBar').offsetWidth) ;
     }
</script>
</head>
<body>
<img src="actionBar.gif" alt="" id="actionBar" onclick='talking() ;' />
</body>
</html>
Et la ça fonctionne bien sur toutes les plateformes.

Merci à tous pour vos réponses.

EDIT :

Avec setTimeout("diap.configuration()", 13) ; ça règle mon problème qui maintenant je le sais vient du fait que mon image n'est pas encore chargée, pourtant l'appel du javascript se fait après l'image, mystère, mystère....
xess91 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 09h39.


 
 
 
 
Partenaires

Hébergement Web