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 :

UI Tabs et ancres nommées


Sujet :

jQuery

  1. #1
    Membre très actif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 248
    Par défaut UI Tabs et ancres nommées
    Bonjour,

    J'utilise jquery et jquery-ui pour afficher des onglets.

    Tout se passe comme convenu excepté dans un cas de figure particulier.

    J'ai paramétré mes onglets pour qu'ils s'affichent en fonction du clique sur m'onglet, mais également en fonction des variables de l'URL.
    Lorsque j'ai #edit, je me retrouve donc sur l'onglet edit ! Tout ça c nickel !

    Mais lorsque je valide un formulaire dans un onglet qui est plutôt long, la page se recharge mais l'onglet arrive en haut de page. C'est le comportement des ancres nommées en html. Si la page est courte, il n'y a pas de soucis, mais pour les pages longues, c'est nettement moins pratique.

    Quelqu'un aurait-il une idée ???

    Merci par avance !

  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 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    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 661
    Billets dans le blog
    1
    Par défaut
    tu as quoi dans l'action du form ?
    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 très actif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 248
    Par défaut
    C'est l'action que je souhaite :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    index.php?action=session#edit
    Mais à cause du défilement type "ancre nommée", j'ai mis le code suivant qui m'affiche donc le premier onglet sans faire défiler la page... mais lorsqu'il y a des erreurs sur le formulaire, je reviens quand même sur ce premier onglet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    index.php?action=session

  4. #4
    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 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    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 661
    Billets dans le blog
    1
    Par défaut
    dans l'attribut action de ton formulaire ????
    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 !

  5. #5
    Membre très actif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 248
    Par défaut
    oui oui, c'est bien l'attribut action...

    ça a l'air de te choquer....

  6. #6
    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 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    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 661
    Billets dans le blog
    1
    Par défaut
    en fait je ne saisis pas le souci
    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 !

  7. #7
    Membre très actif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 248
    Par défaut
    Ok alors je vais un peu mieux m'expliquer.

    LOrsque l'on navigue entre les onglets tout se passe bien...

    Mais lorsque je valide un foirmulaire :
    1. la page est rechargée,
    2. le bon onglet est activé, (jusqu'ici tout va bien)
    3. la page défile jusqu'à la div servant d'onglet (comme les ancres nommées) <-- ce qui ne me convient pas

    L'en-tête du site et surtout les messages de confirmation ou d'erreurs de traitement du formulaire qui se trouve en dehors des onglets ne sont pas visible directement, je dois faire défiler ma page vers le haut pour voir la page correcte...

    En espérant avoir été plus clair cette fois-ci

  8. #8
    Membre chevronné
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Novembre 2010
    Messages : 207
    Par défaut
    Tu as essayé de faire un focus sur un élément du haut de ta page ?

  9. #9
    Membre très actif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 248
    Par défaut
    Tu as essayé de faire un focus sur un élément du haut de ta page ?
    Je viens d'essayer le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <body onload="document.getElementById('toppage').focus();" >
         <input type="text" id="toppage" style="position:absolute;top:0px;border:0px;width:0px;height:0px;"/>
    Hormis le fait que la page s'affiche su niveau de l'onglet et qu'elle remonte ensuite en haut de page, ça marche... par contre c quand vraiment du bidouillage... je suis pas fan de cette solution, même si pour l'instant je vois rien de mieux !

    Une autre solution ???

  10. #10
    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 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    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 661
    Billets dans le blog
    1
    Par défaut
    et avec un timestamp dans l'url ?? pour contourner le cache, peut être le navigateur en oublirait-il la position du scroll ???
    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 !

  11. #11
    Membre très actif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 248
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    et avec un timestamp dans l'url ?? pour contourner le cache, peut être le navigateur en oublirait-il la position du scroll ???
    C'est à dire ? Je ne vois pas trop comment cela peut marcher cette histoire de timestamp...

  12. #12
    Membre chevronné
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Novembre 2010
    Messages : 207
    Par défaut
    Tu utilises quelle version de jquery ui pour les tab ?

  13. #13
    Membre très actif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 248
    Par défaut
    Citation Envoyé par scourjean Voir le message
    Tu utilises quelle version de jquery ui pour les tab ?
    J'utilise jQuery UI 1.8.7

  14. #14
    Membre Expert
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Par défaut
    Citation Envoyé par albedo0 Voir le message
    Citation Envoyé par SpaceFrog Voir le message
    et avec un timestamp dans l'url ?? pour contourner le cache, peut être le navigateur en oublirait-il la position du scroll ???
    C'est à dire ? Je ne vois pas trop comment cela peut marcher cette histoire de timestamp...
    En fait certains navigateurs se fichent éperdument de l'option "no-cache" d'une page. Une URL qui a déjà été visitée est donc ajoutée dans le cache du navigateur et, quand on rappelle cette URL, il se dit "j'ai déjà vu cette page" et il te la rouvre comme il l'avait enregistrée.

    Pour palier à ça, tu peux modifier l'URL de la page, par exemple en rajoutant un attribut contenant un timestamp à ton URL :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    http://www.ton-site.com/ta-page.html?t=230923093
    En javascript tu peux avoir le temps en millisecondes comme ceci :

  15. #15
    Membre très actif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 248
    Par défaut
    Finalement, j'ai trouvé la solution qui me convient...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <body onload="window.scrollBy(0,-100000);">
    Je fais remonter ma page de 100000 pixels au chargement ce qui résout le problème hormis le fait que la page commence par se charger au niveau des onglets... mais bon c'est un moindre mal !

    Merci pour votre aide en tout cas et je reste abonné à ce fil si quelqu'un trouve une idée lumineuse !

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

Discussions similaires

  1. Ancre nommée flash
    Par Heilong dans le forum ActionScript 1 & ActionScript 2
    Réponses: 1
    Dernier message: 19/10/2007, 18h47
  2. Div overflow auto et ancre nommée
    Par sabinep dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 23/01/2007, 11h45
  3. Submit de formulaire et ancre nommée
    Par ssebuser dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 18/01/2007, 09h54
  4. Problème pied de page et ancre nommée
    Par Fleuretta dans le forum Balisage (X)HTML et validation W3C
    Réponses: 11
    Dernier message: 21/08/2006, 17h08

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