IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Un menu qui se déplace


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 44
    Points : 28
    Points
    28
    Par défaut Un menu qui se déplace
    Bonjour!

    Je cherche à faire se déplacer mon menu dans ma page web en même temps que le scroll.

    J'ai écrit ce script et j'ai déjà essayé plusieurs combinaisons et rechercher un peu partout mais rien:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    <script language="javascript">
     
    document.body.onload="window.setTimeout('javascript:position_boite();',1000);";
     
    function position_boite() {
    alert("yo!");
     
    h_boite=document.getElementById("boite_deplacable").top;
    h_boite=(h_boite+window.pageYOffset)/2;
    document.getElementById("boite_deplacable").top=h_boite;
     
    window.setTimeout("javascript:position_boite();",1000);
    }
     
    </script>
    Quelqu'un peut-il m'aider s'il-vous-plaît?

    Merci beaucoup.

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    top dépend du style ....


    => style.top

  3. #3
    CUCARACHA
    Invité(e)
    Par défaut onscroll
    Salut,

    C'est assez simple, il te suffit de déclarer l'évennement onscroll dans ton body :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <body MS_POSITIONING="GridLayout" language=javascript onscroll="return window_onscroll()">
    Puis de créer la fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <script language=javascript>
    <!--
     
    function window_onscroll() {
        window.document.getElementById("boite_deplacable").top =  window.document.body.scrollTop;
    }
     
    //-->
    </script>
    Bien à toi

    Laurent Jordi

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 44
    Points : 28
    Points
    28
    Par défaut
    Désolé ça ne marche pas non plus.

    Je suis carrément perdu.

  5. #5
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    holà !!!!

    je parle dans le vide ou quoi !!!!!!!!



    window.document.getElementById("boite_deplacable").top

    top est une propriété du STYLE ....

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 44
    Points : 28
    Points
    28
    Par défaut
    Non tu ne parles pas dans le vide mais ça ne fonctionne pas non plus ainsi:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <script language=javascript>
    <!--
     
    function window_onscroll() {
        window.document.getElementById("boite_deplacable").style.top =  window.document.body.scrollTop;
    }
     
    //-->
    </script>
    Je ne suis pas sourd.

  7. #7
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    question subsidiarie l'element est en positon absolute ?

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 44
    Points : 28
    Points
    28
    Par défaut
    En position absolute? Absolument!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <div id="boite_deplacable" align="center" style="left:0; top:0; position:absolute;">
    Mais où est l'embrouille alors???

  9. #9
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    et tu la lance quand la fonction on_scroll ???



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <script language=javascript>
    <!--
     
    function window_onscroll() {
     
        window.document.getElementById("boite_deplacable").style.top =  window.document.body.scrollTop+150+'px';
    }
     
    //-->
    </script>
     
    </head>
    <body onscroll="window_onscroll()">
    <a href="javascript:(confirm('oui ou non')?window.location.href='newpage.htm':void(0));">ici</a>
    <div id="boite_deplacable" style="height:150px;width:150px;background-color:red;position:absolute; top:150px">sfqsd</div>
    <div style="height:1500px;">ddd</div>
    </body>
    </html>
    si tu ne mets rien dans le body onscroll ...

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 44
    Points : 28
    Points
    28
    Par défaut
    Si ton script fonctionne, chez moi il ne fonctionne pas, ni dans Firefox, ni dans Internet Explorer.

    Par contre, je travaille avec Dreamweaver MX 2004 et dans la liste déroulante des attributs disponibles pour la balise BODY il n'y a pas d'événement onscroll prévu...

  11. #11
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    Ben tu dois avois un sérieux problème car chez moi il focntionne pour les deux ... testé et approuvé !!!!


    mets l'intégralité de ton code que je voies ou tu te fourvoies ...

  12. #12
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Chez moi ca tourne nickel sous Fx (Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050920 Firefox/1.0.7)

  13. #13
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 44
    Points : 28
    Points
    28
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <title>Document sans titre</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <script language=javascript>
    <!--
     
    function window_onscroll() {
     
        window.document.getElementById("boite_deplacable").style.top =  window.document.body.scrollTop+150+'px';
    }
     
    //-->
    </script>
    </head>
     
    <body onscroll="javascript:window_onscroll();">
    <a href="javascript:(confirm('oui ou non')?window.location.href='newpage.htm':void(0));">ici</a>
    <div id="boite_deplacable" style="height:150px;width:150px;background-color:red;position:absolute; top:150px">sfqsd</div>
    <div style="height:1500px;">ddd</div>
    </body>
    </html>

  14. #14
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Citation Envoyé par Olish
    Par contre, je travaille avec Dreamweaver MX 2004 et dans la liste déroulante des attributs disponibles pour la balise BODY il n'y a pas d'événement onscroll prévu...
    +1
    http://giminik.developpez.com/xhtml/body.html

  15. #15
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    <body onscroll="javascript:window_onscroll();">
    partie en rouge inutile...

    onscroll n'attend pas une rectette de crèpes suzette mais uniquement du javascript ....

    sinon javascript est activé dans tes browsers ???

  16. #16
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    tu as quelle version de browsers ???

    sinon mets toute la page dans un div et utilise le onscroll du div ...

  17. #17
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Enleve la dtd et tu verras que ca marche !
    Quirks mode vs Standards compliance mode

    DW a raison...

  18. #18
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 44
    Points : 28
    Points
    28
    Par défaut
    Oui je me doute. J'ai fait avec et sans ça ne fonctionne pas non plus.

    Et javascript est activé partout.

  19. #19
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Fais une recherche de onscroll sur le W3c, les resultats sont uniquement pour SVG...

    Donc en html, pas d'attribut onscroll

  20. #20
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Citation Envoyé par Olish
    Oui je me doute. J'ai fait avec et sans ça ne fonctionne pas non plus.
    J'ai essayé ton code : pas de scroll
    J'ai enlevé le doctype : scroll !

    Ta page s'affiche en quel mode quirks ou standard ? ("view page info" sous Fx)

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Menu qui se déplace sur changement de page
    Par laurentSc dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 06/05/2014, 17h27
  2. Probleme menu qui se déplace suivant version navigateur
    Par thuglife dans le forum Mise en page CSS
    Réponses: 0
    Dernier message: 29/05/2010, 12h36
  3. pb sous menu qui reste ouvert quand je déplace la souris
    Par mouna201 dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 17/02/2007, 14h26
  4. menu qui passe au dessus du texte
    Par peck dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 24/12/2004, 15h03
  5. faire un petit menu qui lance des processus
    Par tomsoyer dans le forum Linux
    Réponses: 4
    Dernier message: 30/11/2004, 18h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo