begin process at 2012 05 28 23:40:16
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

CSS

 > 

Général

 > 

Afficher / masquer (encore !?)


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

Afficher / masquer (encore !?)

vendredi 22 mai 2009 à 19:36:22 | Afficher / masquer (encore !?)

shumix

Bonjour à tous,
Je pense avoir bien cherché dans le forum, mais je n'ai pas trouvé ce qu'il me faut (ou bien je n'ai pas su l'adapter à mes besoins, étant donné que j'y connais presque rien en javascript :p).
Donc sur une page web en php, j'ai un tableau et dans une des cellule, à l'aide d'une requête sql, j'affiche plusieurs images à la suite (donc je ne veux pas les mettre dans un div ou autre block).
Ce que je souhaiterais faire, c'est qu'au départ, on ne voit qu'une partie de la cellule contenant les images, et qu'on clique sur un lien si on décide de voir les autres images de la série.
Par exemple, sur <a href="http://www.commentcamarche.net/forum/affich-8001938-empecher-le-cache-d-une-partie-de-ma-page">cette page</a>, le texte est en partie maasqué, et il faut cliquer pour lire la suite.
J'ai regardé le code source de la page, et je vois qu'il est question d'une fonction "limiter" basée sur "offsetHeight".
Je peux donner un id à ma cellule, donc je pense que je peux reprendre le principe du site montrer en exemple du genre if mon_id.offsetHeight > une_valeur { limiter }
Par contre, comme je n'ai jamais fait de javascript, je n'arrive pas du tout à mesurer la hauteur de ma cellule, et je ne parle même pas d'écrire cette fonction "limiter".
Y aurrait-il des ames charitable pour mener à bien mon projet ?
Cordialement,
Olivier.

PS: je sais que vous aimer bien lorsqu'on met le code source de la page en question, mais là, je ne voit vraiment pas l'utilité, mais si c'est nécessaire, dites le moi et j'y remédirais sans problème ;) (j'éspère ne pas mettre trompé de section :s)
samedi 23 mai 2009 à 08:43:18 | Re : Afficher / masquer (encore !?)

Bul3

Membre Club
bonjour,
>>donc je ne veux pas les mettre dans un div ou autre block
ah alors, si tu ne veux pas...
>>http://www....-empecher-le-cache-d-une-partie-de-ma-page
si tu parles des questions/réponses,
elles sont dans un div ou "autre block" !!
@+

samedi 23 mai 2009 à 11:54:48 | Re : Afficher / masquer (encore !?)

psyckan

J'ai pris le code de http://www.editeurjavascript.com/scripts/scripts_navigation_3_812.php et je l'ai modifié pour faire ce que je crois que tu veux faire :

<head>
<script type="text/javascript">
function Suite(lien){
   
    var objet = document.getElementById('popup');
   
    if(objet.style.height == "100px"){
       
        objet.style.overflow = "hidden";
        lien.innerHTML = "-";
        var hFinal = 200;
        var hActuel = 100;
      
        var timer;
        var fct = function ()
        {
                hActuel += 20;
                objet.style.height = hActuel + 'px';
                if( hActuel == hFinal)
                {
                        clearInterval(timer);
                }
        };
        fct();
        timer = setInterval(fct,40);    //Toute les 40 ms
       
    }else if(objet.style.height == "200px"){
       
        var hFinal      =     100;  //Hauteur finale (la hauteur une fois que ça aura fini de déplier !)
        var hActuel     =     200;         //Hauteur initiale (la hauteur dès le début !)
      
        var timer;
        var fct = function ()
        {
                hActuel -= 20;
                objet.style.height = hActuel+'px';
                if( hActuel == hFinal)
                {
                        clearInterval(timer);   //Arrête le timer
                }
        };
        fct();
        timer = setInterval(fct,40);    //Toute les 40 ms
        lien.innerHTML = "+";
       
    }
}
</script>
</head>
<body>
[<a href="javascript:;" onclick="Suite(this)">+</a>]

<div id="popup" style="border: #000000 1px solid; width: 300px; height: 100px; overflow:hidden;">
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
</div>
</body>

Le offsetHeight sert seulement a récuperer la taille donc j'ai pas jugé utilise de m'en servir.

dimanche 24 mai 2009 à 12:07:55 | Re : Afficher / masquer (encore !?)

shumix

Bonjour !

@ Bul3 : Je me suis peut-être mal exprimé, mais je ne voulais pas mettre chaque image dans un div différent, à cause de l'affichage en block que cela implique. Par contre, rien ne m'empêche de mettre ma cellule <td> dans un <div> ;)

@ Psyckan : Merci pour ton aide, je pense effectivement que tu as bien compris ce que je veux faire, l'exemple sur la page dont tu t'es inspiré me conviendrais parfaitement, mais en ne faisant pas complètement disparaitre la "boite", comme dans ton code.

Problèmes :
As-tu tester ton code ? Ou alors j'ai fait (ou oublier de faire ?) quelque chose, car cela ne fonctionne pas chez moi :( quand de je clique sur le [+] il ne se passe rien :'(
Sinon je ne sais pas si on peut vraiment se passer de "offsetHeight", car la hauteur de la <td> n'est pas fixe, elle varie en fonction du contenu que je met dedans ... ce qui voudrais dire, si je comprend bien, qu'il faudrait passer cette hauteur à une variable mais cela veut dire qu'on ne peut pas mettre le fonction "Suite()" dans le <head>. Enfin, même si j'ai (peut être) bien compris le pricipe (?), je suis largué quand à la réalisation du script :(

En tout cas toute aide est la bienvenue, et merci pour celle déjà apportée ;)

@++
dimanche 24 mai 2009 à 14:12:44 | Re : Afficher / masquer (encore !?)

psyckan

Ben écoute moi tout marche trés bien sous FF et IE8
Tu peu le tester ici si tu veu : http://pagesperso-orange.fr/tivanbelle/script.html
T'es sous quel browser ?
dimanche 24 mai 2009 à 15:18:23 | Re : Afficher / masquer (encore !?)

Bul3

Membre Club

>>Je me suis peut-être mal exprimé,
je ne sais pas.
tu sais, moi je suis un peu limité
et je n'arrive pas à deviner quoi que ce soit
je répond, quand je comprend, ce que je crois
qui puisse résoudre la question.

>>mais je ne voulais pas mettre chaque image dans un div différent,
ce n'est pas ce que je proposais ! où as tu compris cela ????

>>à cause de l'affichage en block que cela implique.
ben, si ce n'est que cela ( mais à mon avis
absolument pas !! )  il suffirait de mettre inline !

>>Par contre, rien ne m'empêche de mettre ma cellule <td> dans un <div>
je te disais exactement le contraire...
un <div> dans un <td>
dimanche 24 mai 2009 à 16:36:11 | Re : Afficher / masquer (encore !?)

psyckan

Réponse acceptée !
Y'a surement moyen de faire mieu que ça, mais c'est ce que j'ai réussi à faire avec mes connaissances :

http://pagesperso-orange.fr/tivanbelle/script2.html
http://pagesperso-orange.fr/tivanbelle/script1.html

Tu verras qu'il y a un bug d'affichage au début, juste le temps de choper la taille de ta div

J'éspère t'avoir aidé
dimanche 24 mai 2009 à 16:38:59 | Re : Afficher / masquer (encore !?)

psyckan

Ah au fait, le offsetHeight prend en compte les bordures, donc pour une div de 600 avec une bordure de 1px en haut et en bas tu auras un offsetHeight de 602...
dimanche 24 mai 2009 à 16:46:16 | Re : Afficher / masquer (encore !?)

Bul3

Membre Club

tu as peu-être raison psyckan...

perso de ce que j'ai vu et compris,
un simple
...<td>
      <div style="height:200px;overflow:auto;...">
          contenu....
      </div>
   </td>....
suffit !
mais peut-être me goure-je....

dimanche 24 mai 2009 à 23:06:39 | Re : Afficher / masquer (encore !?)

shumix

Alors là BRAVO ! Et surtout MERCI Psyckan !

Sa fonctionne NICKEL et c'est EXACTEMENT ce que je voulais

@ Bul3 : Mea culpa, j'ai fait plusieurs erreurs : J'AI mal compris tes premières explications, au sujet des images dans un <div>, de plus, il est vrai que l'attribut "inline" aurait été une solution au fait de ne pas vouloir employé de <div>, et enfin, j'ai écrit que je pouvait mettre une <td> dans un <div> alors que c'est exactement le contraire que j'ai fait lors de mon test (comme tu me le suggérais donc). Par contre pour le "overflow: auto", cela ne pouvait pas convenir car je voulais que l'on doive cliquer sur un lien pour voir le reste de l'affichage.
Je te prie donc de m'excuser pour ces écarts, et te remercie de ta participation.

En fait cela n'a fonctionner du premier coup car j'avais oublier de désactivé une fonction qui affiche un message de chargement tant que la page n'est pas chargée completement, et il y avait donc un conflit.

En tout cas, encore bravo et merci Psyckan !

@++

1 2

Cette discussion est classée dans : images, page, afficher, limiter, cellule


Répondre à ce message

Sujets en rapport avec ce message

afficher une page une fois le préchragement des images terminé [ par gorjan2 ] Bonjour à tous, je voudrais savoir s'il est possible de contrôler l'affichage d'une page html. Concrètement j'ai une dizaine d'mages qui composent ma Afficher un formulaire via Ajax [ par betaspin ] Bonjour à toutes et à tous,J'ai une appli qui fonctionne avec de l'Ajax. J'utilise PHP pour retourner les résultats à afficher en xml.J'ai donc dans m Problème galerie d'images générée en js [ par way2web ] Bonjour,j'ai créé une galerie photo générée via javascript qui affiche 5 ou 7 photos par page en fonction de la résolution du visiteur, avec des liens affecter une valeur a une variable pour afficher une page [ par tony_73 ] Bonjour,voila je voudrais affecter une valeur a une variable (en javascript) quand je clique sur un bouton. Et executer une page selon la valeur de la diaporama aleatoire sur une page web [ par photographe62 ] Bonjour a tout le monde, j'en appelle a votre aide pour resoudre un petit probleme qui je suis persuadé ne vous fera pas peur, mais par contre pour mo galleries d'image multiples sur une même page [ par youkiwouf ] bonjour à tous c'est mon premier post. je suis débudébudébutant et aurais besoin de vos bons conseils. j'ai 5 images sur ma page.A1, B1, C1, D1, et afficher une images dans une liste box [ par ahmani24 ] Bonjour tout le monde,Comment je paux afficher une images dans une liste box (une liste )merci d'avantage afficher une page dans une i frame appartenant à une autre page [ par AeroZeppelin ] Hey,J'ai une page main contenant un menu et 4 zones i frame. Lorsque l'on clique sur l'une des catégories du menu, le contenu des i frames changent.J' Détecter est afficher les coordonées de la page du navigateur ??? [ par supergrey ] Bon, déjà je précise qu'en javascript je suis un newbie. Je voudrais afficher dans la barre de titre du navigateur , la position de la fenetre du navi probleme d'envoi page html par mail [ par rmic210282 ] Bonjour a tous,voilà , j'ai un petit soucis : j'aimerai envoyer un page html avec des images par mail ( les images se trouvent sur un serveur). Le pro


Nos sponsors


Sondage...

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 : 0,296 sec (4)

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