[PHP]Mémoriser partie d'un texte déroulant

Fermé
Groquik - Modifié par Groquik le 5/06/2011 à 18:33
 Groquik - 8 juin 2011 à 19:32
Bonjour à tous,

Je vous explique: j'ai sur la gauche du site que je développe actuellement un genre de bandeau vertical, dans lequel déroulent des actualités/news de haut en bas. Ce bandeau apparait sur toutes les pages du site. les actualités sont "en dur" dans le code, et le défilement se fait tout simplement avec du javascript.

Le problème, c'est qu'à chaque fois que je change de page, le déroulement recommence à zéro, et comme un utilisateur passe en général quelques secondes sur une page, il voit toujours le début des news, mais rarement la fin...

J'aimerais que lorsque l'utilisateur change de page, la news qui est en train de défiler soit "sauvegardée", et qu'au chargement de la nouvelle page, le défilement recommence à partir de cet endroit là.

J'avais pensé sauvegarder la position grâce à un système de session, et commencer le défilement grâce à un système d'ancre, mais je ne vois pas trop comment "sauvegarder" la news courante dans ma variable de session. Je suis également preneur de toute autre idée.

Je ne sais pas trop si je suis assez clair, si vous avez besoin de plus de précisions n'hésitez pas à me le demander. Pour info, je connais le PHP, le HTML, le javascript, et l'ajax (Jquery et xmlhttprequest).


Merci d'avance et bonne journée à vous!

David

2 réponses

Bonjour,

Vous pourriez lancer un Ajax à la fermeture de la page avec un événement onBeforeUnLoad sur le BODY qui mémorise l'actualité en cours dans une variable se session, variable qui servira à initialiser la variable Javascript lors du chargement de la page suivante.
Sinon même principe avec un cookie.
Zébulon
0
Oui, j'avais pensé aussi aux cookies, les deux solutions sont valables (même si personnellement je préfère les sessions). Le problème, c'est comment savoir quelle news est en train de défiler (j'utilise juste un marquee pour le défilement). Pour le moment les news sont en dur, mais j'envisage de passer en dynamique en les mettant dans ma bdd. Il faut trouver un moyen pour qu'au moment où on change de page, je puisse savoir quelle news est en train d'être affichée.
0
Utilisateur anonyme
6 juin 2011 à 16:18
Une balise marquee ?
Normalement cette balise est abandonnée depuis le HTML 3.2, en plus elle ne fonctionne pas sur tous les navigateurs.
Effectivement avec ce genre de balise, difficile de savoir où vous en êtes, pourquoi ne pas la replacer par un script
0
Je suis ouvert à toute proposition, mais comme vous venez de le constater, cela fait longtemps que je n'ai pas fait de programmation web... Auriez-vous un algorithme précis en tête?
0
Utilisateur anonyme
7 juin 2011 à 08:13
Recherche google : javascript marquee

http://www.javascriptfr.com
0
Merci neoprog, je me suis un peu penché sur le code que tu m'as proposé, mais je n'arrive toujours pas à obtenir ce que je souhaite. Comment faire pour que cette ligne:
this.currentStep=this.startStep;
qui initialise le bloc de texte au début, puisse prendre une autre valeur lors d'un autre chargement?
0