Gros bug sur la création d'une class js

Résolu
mistic10 Messages postés 11 Date d'inscription samedi 12 mars 2011 Statut Membre Dernière intervention 1 septembre 2012 - 21 déc. 2011 à 14:18
BunoCS Messages postés 15394 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 29 septembre 2023 - 23 déc. 2011 à 11:10
bonjour a tous

j'ai du mal a comprendre ce qui ce passe et j'orrai grand besoin de vos lumières.
comme vous l'avez surement compris je m’essaye a la construction de class js, mais il m’arrive un truque bizarre.

aven tout voila le code js:

apli =
{

init: function () 
{
addEventSimple(window,'resize',apli.sizeBody);
apli.sizeBody();
},

sizeBody: function ()
{
alert('test');
},
}

function addEventSimple(obj,evt,fn) 
{
if (obj.addEventListener)
obj.addEventListener(evt,fn,false);
else if (obj.attachEvent)
obj.attachEvent('on'+evt,fn);
}


et l'appel du js :



Voila le souci : au chargement de la page tout va bien (le "alert('test')" apparait).
quand je fais passer la fenêtre du navigateur (FF) de plein écran a une fenêtre plus petite tout va bien aussi, mais quand je veux repasser en plein écran ou en modifier la taille, FF devient coléreux et sa fenêtre devient noir.
et là la seul possibilité c'est "F5".

le problème vient visiblement du "window.addEventListener", mais comme l'écran devient noir je ne peu même pas me baser sur les erreurs firebug.

donc si vous avez une idée !!

merci d'avance.

5 réponses

Zobibol Messages postés 469 Date d'inscription mercredi 9 janvier 2002 Statut Membre Dernière intervention 20 février 2017 6
22 déc. 2011 à 11:37
Bonjour, j'ai comme le vague pressentiment qu'en réalité, le problème est ailleurs...
J'ai tout simplement remplacé le alert (parce que je pense que c'est lui pose soucis par une mise à jour de champ
et là, c'est magique:
<html>
<head>
<script type="text/javascript">
apli =
{

init: function () 
{
addEventSimple(window,'resize',apli.sizeBody);
apli.sizeBody();
},

sizeBody: function ()
{
document.getElementById("debug").innerHTML = new Date() + "- width:"+document.body.offsetWidth + " height:"+document.body.clientHeight;
}
};

function addEventSimple(obj,evt,fn) 
{
if (obj.addEventListener)
obj.addEventListener(evt,fn,false);
else if (obj.attachEvent)
obj.attachEvent('on'+evt,fn);
}

var app;
window.onload= function(){
apli.init();
}


</script>
</head>




</html>


j'ai aussi modifier le body, le onload passe directement via la fonction.
plus les corrections signalée en amont.

[o-_-o]
3
@karamel Messages postés 1838 Date d'inscription vendredi 9 mai 2008 Statut Modérateur Dernière intervention 19 août 2023 148
21 déc. 2011 à 17:35
bonjour

et au lieux de mettre windows en mettant document voir document.documentElement
0
mistic10 Messages postés 11 Date d'inscription samedi 12 mars 2011 Statut Membre Dernière intervention 1 septembre 2012
21 déc. 2011 à 18:16
merci kazma pour cette réponse.
malheureusement le bug persiste.

il y'a quelqu faute de syntax dans dans la class apli.
le point virgule a été oublié a la fin de la class et une virgule est en top a la fin de la dèrniere méthodes de celle-ci.

mais après corection il y'a toujour le bug.
0
mistic10 Messages postés 11 Date d'inscription samedi 12 mars 2011 Statut Membre Dernière intervention 1 septembre 2012
22 déc. 2011 à 14:27
Zobibol> effectivement le problème venait du "alert".
je te remercie pour ces correction.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
BunoCS Messages postés 15394 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 29 septembre 2023 102
23 déc. 2011 à 11:10
Hello,
Si le problème est résolu, merci de cliquer sur "Réponse Acceptée"


@+
Buno, Admin CS
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
0
Rejoignez-nous