begin process at 2012 05 29 19:05:22
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript Orienté objet (POO)

 > 

Divers

 > 

Objet.style.top me retourne 0


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Objet.style.top me retourne 0

mercredi 27 février 2008 à 19:25:03 | Objet.style.top me retourne 0

tibob51

Membre Club
Bonjour,
Je suis débutant en java (je galère pas mal même), et sur ce morceaux de code je n'arrive pas a comprendre pourquoi ma ariable posi est égale à 0.
PS: les lignes en commentaire c'est juste pour les neutraliser.

var Obj = document.getElementById('im');
var posi= parseInt(Obj.style.top);
//var posi= Obj.style.top;
document.write(posi);
//Obj.style.top = posi;
// Obj.style.top=180;

Merci pour votre aide
jeudi 28 février 2008 à 10:16:56 | Re : Objet.style.top me retourne 0

bultez

Membre Club


Bonjour,

    si c'est du java, pas le bon forum.... ici c'est javascript, et ça n'a rien à voir !

    ce que tu nous donnes ressemble cependant à du javascript, alors

          si tu nous donnais la balise en question ? et quand / où ... fais-tu ce javascript ?



                Cordialement            Bul         [mon Site]     [M'écrire]
jeudi 28 février 2008 à 11:56:30 | Re : Objet.style.top me retourne 0

tibob51

Membre Club
Désolé pour ma faute de fraape, oui c'est du javascript.
A la base je veut faire bouger un menu flotant, qui serai suitué dans un div.
Mais pour mes test je le fait sur une image.

le html:
<img scr="image1.jpg" name="im" height="90" width="90" alt="le titre" style="position : absolute;">

le scipt (qui se trouve dans un fichier séparé):
window.onscroll = function()
{
//document.getElementById('im').style.top = document.body.scrollTop;
var Obj = document.getElementById('im');

var posi=Obj.style.top;
//var posi= parseInt(Obj.style.top);

posi += document.body.scrollTop;
//posi += 180;

document.write(posi);
//Obj.style.top = posi;

// Obj.style.top=180;
//Obj.style.width=180;
}
(les lignes mises en commentaire c'est pour neutraliser leur code)
jeudi 28 février 2008 à 13:56:36 | Re : Objet.style.top me retourne 0

bultez

Membre Club
donc... c'est normal ( oui désolé, c'est agaçant ! )
le name existe pas l'ID
IE sait remplacer l'un par l'autre, pas FF.
    <img scr="image1.jpg" name="im" id="im"
                height="90" width="90" alt="le titre" style="position : absolute;"  />
    ça devrait le faire...

                Cordialement            Bul         [mon Site]     [M'écrire]
jeudi 28 février 2008 à 14:57:53 | Re : Objet.style.top me retourne 0

tibob51

Membre Club
C'est ce que j'ai pensé moi aussi, c'est pour ça qu'il ya cette ligne:
//Obj.style.width=180;

j'ai fait un test pour voir si déjà j'avais l'objet, et oui la taille de mon imagepasse bien a 180px.
pour résumer:

//Obj.style.width=180; -->marche
//document.getElementById('im').style.top = document.body.scrollTop; --> erreur
var posi=Obj.style.top; --> ne marche pas (renvoi 0 et f   et fait planté explorer, quand j'utilie document.write.. pour l'afficher).


jeudi 28 février 2008 à 15:16:45 | Re : Objet.style.top me retourne 0

bultez

Membre Club
pourrais-tu simplement, nous mettre ce qui ne va pas ?
    pour ici, évite les // si tu n'utilises pas, par contre enlève les si c'est ce que tu veux faire.
mets nous le minimum, mais tout ce qui est néceesaire, tel que tu utilises,
    sinon on doit interpréter, modifier, ne pas faire la même chose que toi....

                Cordialement            Bul         [mon Site]     [M'écrire]
jeudi 28 février 2008 à 17:13:37 | Re : Objet.style.top me retourne 0

XtremDuke

Réponse acceptée !
Il est tout à fait normal que tu ne puisse récuperer la valeur Top de ton élément si celle-ci n'a pas été renseignée ds son style auparavant.

Pour récuperer les positions X et Y de ton élément, utilise la fonction suivante :

function getCumulativeOffset(oObj){
    var valTop = 0, valLeft = 0;
    var oReturn = {left: 0, top: 0};
    do{
        valTop += oObj.offsetTop  || 0;
        valLeft += oObj.offsetLeft || 0;
        oObj = oObj.offsetParent;
    }while (oObj);
    oReturn.left = valLeft;
    oReturn.top = valTop;
    return oReturn;
}

Pourquoi ne pas utiliser directement l'instruction offsetTop  ? Parceque dans certains cas (notament quand il y a une position relative ds le DOM), offsetTop va te renvoyer la position par rapport à son parent et par rapport au document.

jeudi 28 février 2008 à 17:15:50 | Re : Objet.style.top me retourne 0

XtremDuke

Correction :

Parceque dans certains cas (notament quand il y a une position relative ds le DOM), offsetTop va te renvoyer la position par rapport à son parent et non par rapport au document.
vendredi 29 février 2008 à 21:13:53 | Re : Objet.style.top me retourne 0

tibob51

Membre Club
Voici ce qui plante

var Obj = document.getElementById('im');
var posi=Obj.style.top; // erreur ici posi = 0;

posi += 10;
Obj.style.top = posi;

XtremDuke> je n'arrive pas a comprendre la ligne (je débute totalement en javascript et la façon dont fonctionne ce language me semble un peu mystique)
 valTop += oObj.offsetTop  || 0;

valTop est égal à Obj.offsetTop ou 0???

Sinon j'ai du mal a voir où implanter cette fonction et quoi faire de l'objet retourné.
Merci pour votre aide



samedi 1 mars 2008 à 10:13:14 | Re : Objet.style.top me retourne 0

bultez

Membre Club


<body>
<img src="image1.jpg" name="im" id="im"
        height="90" width="90" alt="le titre" style="position : absolute;">
<script>
var Obj = document.getElementById('im');
var posi=Obj.style.top;
posi += 10;
Obj.style.top = posi;
</script>
</body>




                Cordialement            Bul         [mon Site]     [M'écrire]

1 2

Cette discussion est classée dans : style, var, top, obj, posi


Répondre à ce message

Sujets en rapport avec ce message

j'ai fini par ameliorer, mais sa va toujour pas [ par frvfrvfrvfrv ] salut à tous,je suis toujours avec mes div. deux qui parte sur les coté,et la troisieme qui devrait monter, mais je crois pas etre assez autoritaire.. mes div ne font pas ce que je leurs dis !#? sale gosses :) [ par frvfrvfrvfrv ] voici a quoi resemble mon script :une partie est ok...... grace a vous tous...... MERCI !donc: html PDA [ par cjcj ] La fonction ci dessous me permet de changer la couleur de la colonne cliquée ( La première devient verte, la deuxième devient rouge...) et les colonne menu en cascade [ par oceane751 ] bonjour à tous!! j'ai du code me permettant de creer un menu horizontal en cascade, mais j'ai un peu de mal en effet, pour certain element du menu probleme affichage/masquer menu vertical [ par neolin85 ] Bonjour à tous, j'ai developpé un petit code qui permet de faire un menu horizontal avec des menus verticaux pour chaque clique sur le menu.J'ai un pe Player multi format sécuriter java & php [ par c2bomb ] bonjour a tous,je cherche a afficher mon player,dans une fenetre style popup,mais hélas je suis vraiment nulle en javascript...si quelq'un peut m'aide 2 menuS deroulants java dans une page [ par DEVLYNE ] Bonjour!Sachez que je suis uns très grande débutante mais j'ai un petit souci.J'utilise un logiciel gratuit: Coffee Cup DHTML menu pour faire mes menu Changer un style [ par initnocsib ] Bonjour,Je suis sûr que je fais une erreur énorme mais... je trouve pas.Le code ci-dessous ne fonctionne qu'à moitié :Le mouseover passe le texte en r compatibilité d'un script avec Opéra et Safari [ par tarentaise ] Bonjour, Un petit souci de compatibilité d'un script avec Opéra et Safari. J'ai sur mon site un script qui permet aux mal-voyants de changer la feui Enregistrer drag n drop [ par tales ] Bonjour,Je voudrais savoir comment enregistrer la position de mes images aprés un drag n drop.Que lorsque je réaffiche ma page mes images soient là oû


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,697 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales