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

jQuery Discussion :

Scroller après chargement de la page (tableau)


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club Avatar de Rat-pi
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2016
    Messages : 2
    Par défaut Scroller après chargement de la page (tableau)
    Bonjour à tous,

    J'ai un tableau sur une page PHP, avec des liens qui renvoient vers une deuxième page. Sur cette deuxième page, lorsque l'utilisateur fini ce qu'il a à faire, il est redirigé vers la premiere page contenant le tableau en question. Jusque là tout va bien.

    Par contre, sachant qu'au retour j'ai une variable PHP qui indique le numéro de la ligne du tableau précédemment utilisée, j'aimerai qu'une fois le chargement de la page terminée, celle-ci "scroll" jusqu'à ce numéro en question.

    Etant donné que je suis plus que débutant en JS et que je me doute qu'il faut passer par ce language pour atteindre mon objectif j'ai effectué des recherches mais ce que je trouve ne m'aide pas plus que ça car j'ai du mal avec ce language, je n'y comprends pas grand chose.
    Or j'ai juste besoin de faire cette petite action sans passer par un cours complet en JS...

    Je vous remercie d'avance pour votre aide.

    Voici mon tableau :
    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
    24
    25
    26
    27
    28
    29
    30
    31
     
    <table class="table table-bordered table-hover table-striped" style="border: 1px black solid;">
     
     
      <thead>
           <tr style="background-color: #e6e6e6;">
               <th style="border: 1px black solid; text-align: center;">Identifiant</th>
               <th style="border: 1px black solid; text-align: center;">Nom</th>
               <th style="border: 1px black solid; text-align: center;">Nom J.F.</th>
               <th style="border: 1px black solid; text-align: center;">Prénom</th>
           </tr>
      </thead>
     
      <?php         
           while($DATA = $REQ->fetch())
           {   
      ?>
         <tbody style="border: 1px black solid; text-align: center;">
            <tr style="background-color: white; ">
               <?php
               echo ('<td style="border: 1px black solid;"><a href="Inbox2.php?ID='.$DATA['ID_Inscrit'].'">'.$DATA['ID_Inscrit'].'</a></td>');
               echo ('<td style="border: 1px black solid;">'.$DATA['Nom'].'</td>');
               echo ('<td style="border: 1px black solid;">'.$DATA['Nom_JF'].'</td>');
               echo ('<td style="border: 1px black solid;">'.$DATA['Prenom'].'</td>');
       ?>
                </tr>
         </tbody>
       <?php        
        }
       ?>   
     </table>

  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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    regarde du coté du onload du body
    et de scrollTop et scrollHeight ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre éprouvé Avatar de lalouve
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2004
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2004
    Messages : 128
    Par défaut
    Bonjour,

    Pas besoin forcément de JavaScript pour scroller automatiquement vers une ancre placée dans la page.
    En revanche, avec du JavaScript, vous pourrez obtenir ce résultat avec une transition pour un effet plus smooth.

    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
    24
    25
    26
    27
    28
    29
    30
    31
    
    <thead>
           <tr style="background-color: #e6e6e6;">
               <th style="border: 1px black solid; text-align: center;">Identifiant</th>
               <th style="border: 1px black solid; text-align: center;">Nom</th>
               <th style="border: 1px black solid; text-align: center;">Nom J.F.</th>
               <th style="border: 1px black solid; text-align: center;">Prénom</th>
           </tr>
      </thead>
     
      <?php         
           while($DATA = $REQ->fetch())
           {   
      ?>
         <tbody style="border: 1px black solid; text-align: center;">
            <tr id="row<?php echo $DATA['ID_Inscrit']; ?>" style="background-color: white; ">
               <?php
               echo ('<td style="border: 1px black solid;"><a href="Inbox2.php?ID='.$DATA['ID_Inscrit'].'">'.$DATA['ID_Inscrit'].'</a></td>');
               echo ('<td style="border: 1px black solid;">'.$DATA['Nom'].'</td>');
               echo ('<td style="border: 1px black solid;">'.$DATA['Nom_JF'].'</td>');
               echo ('<td style="border: 1px black solid;">'.$DATA['Prenom'].'</td>');
       ?>
                </tr>
         </tbody>
       <?php        
        }
       ?>   
     </table>
    
    


    Il suffit que l'url de retour vers la page1 soit de la forme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    http://www.domain.com/page1.php#rowXXX
    XXX étant l'identifiant de la ligne vers laquelle vous souhaitez scroller.

  4. #4
    Candidat au Club Avatar de Rat-pi
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2016
    Messages : 2
    Par défaut
    Merci pour ta réponse lalouve !
    J'ai essayé ça fonctionne au calme.

    Mais comme vous l'avez précisé c'est vrai que c'est moins smooth...

    Finalement après des recherches plus approfondies, j'ai réussi a le faire.

    Je mets le code au cas ou quelqu'un chercherait à obtenir le même résultat :

    JS placé dans body :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <script language="javascript">
    	$(document).ready(function () 
    	{
    		// Handler for .ready() called.
    		$('html, body').animate({ scrollTop: $('#<?PHP echo $_GET['IDSubscriber'];?>').offset().top -50}, 'slow');
    	});
    	</script>

    HTML / PHP
    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
    24
    25
    26
    27
    28
    29
    30
     
    <table class="table table-bordered table-hover table-striped" style="border: 1px black solid;">
     
         <thead>
                     <tr style="background-color: #e6e6e6;">
                     <th style="border: 1px black solid; text-align: center;">Identifiant</th>
                     <th style="border: 1px black solid; text-align: center;">Nom</th>
                     <th style="border: 1px black solid; text-align: center;">Nom J.F.</th>
                     <th style="border: 1px black solid; text-align: center;">Prénom</th>
                 </tr>
          </thead>
     
           <?php                   
                  while($DATA = $REQ->fetch())
                 {  
            ?>
    		    <tbody style="border: 1px black solid; text-align: center;">
    		           <tr id="<?php echo $DATA['ID_Inscrit']; ?>" style="background-color: white; ">
    		                <?php
                                            echo ('<td style="border: 1px black solid;"><a href="Inbox2.php?ID='.$DATA['ID_Inscrit'].'">'.$DATA['ID_Inscrit'].'</a></td>');
                                            echo ('<td style="border: 1px black solid;">'.$DATA['Nom'].'</td>');
                                            echo ('<td style="border: 1px black solid;">'.$DATA['Nom_JF'].'</td>');
                                            echo ('<td style="border: 1px black solid;">'.$DATA['Prenom'].'</td>');
                                     ?>
    		            </tr>
    		      </tbody>
             <?php                   
                   }
              ?>	
    </table>

  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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    Plus simplement:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <script language="javascript">
    	$(function () 
    	{
    		$('#<?PHP echo $_GET['IDSubscriber'];?>').get(0).scrollIntoView();
    	});
    </script>
    ou sur la dernière ligne du table
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $('table tr').last().get(0).scrollIntoView();
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 25/10/2011, 11h44
  2. Réponses: 16
    Dernier message: 16/03/2011, 13h53
  3. [Dojo] Ajouter des elements dojo apres chargement de la page
    Par khattat dans le forum Bibliothèques & Frameworks
    Réponses: 10
    Dernier message: 29/07/2009, 08h51
  4. Réponses: 2
    Dernier message: 20/11/2008, 19h13
  5. afficher un texte après chargement de la page
    Par klintistwood dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 12/04/2008, 19h01

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