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 :

Liste défilante et arret du déroulement


Sujet :

JavaScript

  1. #1
    Membre régulier
    Inscrit en
    Avril 2004
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 213
    Points : 111
    Points
    111
    Par défaut Liste défilante et arret du déroulement
    Bonjour,

    j'intérroge une base de donnée, j'affiche 20 résultats par page. Pour passer d'une page à l'autre, j'utilise une "liste défilante" contenant les liens pour accéder aux autres pages comme ci-dessous.



    avec les boutons oranges je vais directement au début de la liste (ou à la fin). Avec les violets je me décale petit à petit.

    Le problème est que sous IE en utilisant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    parseInt(document.getElementById('div2').style.width)-document.getElementById('div4').offsetWidth;
    j'obtiens la longeur maximal et donc j'arrive bien à aller à la fin. Mais sous FF j'obtiens 0.

    Pour vous aidez voici le code que j'utilise pour créer mes divs: sachant que $numb=4
    $num=2
    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
     
    $output .= "<table align='center'><tr><td>\n";
    $output .= "<img src='". $img_path ."list/Debut.gif' class='img' alt='Permet de revenir aux premières pages' onClick='Debut(".$nbpage_limit.");'>\n";
     
    $output .= "<img src='". $img_path ."list/Gauche.gif' class='img' name='fd". $num ."' id='fd". $num ."'alt='Faire définer les pages vers le début' style='visibility:visible' onMouseover='ADroite(".$nbpage_limit.");' onMouseout='clearTimeout(timid);'> \n";
    $output .= "</td><td><div name='div". $num ."' id='div". $num ."' style='position:relative;width:200pt;height:20pt;overflow:hidden;'>\n";
    $output .= "<div name='div". $numb ."' id='div". $numb ."' onclick='clearTimeout(timid);' style='position:absolute;left:";
     
    if (isset($ppos)) 
    { 
      	  $output .= "$ppos";
    } 
    else 
    { 
    	  $output .= "0pt";
    }
    $output .= ";'><nobr>\n";
     
    //Boucle écrivant les n°pages
    for ($nl=1;$nl<=$nbpage_limit+1;$nl++) 
    {
    $ptitle = $nl. ($nl==1?'-ere':'-ieme') .' page';
    		if ($nl==1) 
    		{
    			$phref = $main_url ."&start_limit=0";
    		} 
    		else 
    		{
    			if ($nl==$nbpage_limit+1) 
    			{
    				$phref = $main_url ."&start_limit=end";
    			} 
    			else 
    			{
    				$phref = $main_url ."&start_limit=". ($nl-1)*$step_limit;
    			}
    		}
    		if ( $start_limit == (($nl-1)*$step_limit) )  
    		{
    			$output .= "<b>". ($nl<10?"0$nl":"$nl") ."</b>\n";
    		} 
    		else 
    		{
    		  $output .= "<a href='#'  onclick='window.location=' ". $phref . "&renew=0&ppos='+ document.getElementById('div". $numb ."').style.left'>". ($nl<10?"0$nl":"$nl") ."</a>\n";
     }
    }
     
    $output .= "</nobr></div></div></td>\n";
     
    $output .= "<td><img src='" . $img_path ."list/Droite.gif' class='img' name='fg". $num ."' id='fg". $num ."' alt='Faire définer les pages vers la fin' style='visibility:visible' onMouseover='AGauche(".$nbpage_limit.");' onMouseout='clearTimeout(timid);'> \n";
     
    $output .= "<img src=' ". $img_path ."list/Fin.gif' class='img' alt='Permet d'accéder aux dernières pages' onClick='Fin(".$nbpage_limit.");'> </td></tr></table>\n";
     
    return $output;
    d'avance merci de vos réponses

  2. #2
    Membre régulier
    Inscrit en
    Avril 2004
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 213
    Points : 111
    Points
    111
    Par défaut
    En fait j'ai trouvé.

    pour IE: -document.getElementById('div4').offsetWidth+pt == concaténation de 2 chaine de caractères car pt est un string

    pour FF c'est l'addition de 2 chiffres tout simplement

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

Discussions similaires

  1. html liste défilante
    Par thedaaark dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 30/10/2014, 17h02
  2. Réponses: 25
    Dernier message: 11/05/2012, 15h09
  3. [Google Maps] Liste défilante de marqueurs
    Par Nerull dans le forum APIs Google
    Réponses: 0
    Dernier message: 03/02/2011, 12h22
  4. [À télécharger] Liste défilante de texte avec la jAPI
    Par pottiez dans le forum Téléchargez
    Réponses: 0
    Dernier message: 14/11/2010, 15h06
  5. [AC-2000] Arreter le déroulement d'Excel
    Par Jason T dans le forum VBA Access
    Réponses: 5
    Dernier message: 18/06/2009, 16h45

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