SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano

278 Plugins, 195 contribs sur SPIP-Zone, 32 visiteurs en ce moment

Accueil > Navigation > Hyperliens > Ancres douces > Ancres douces

Ancres douces

21 octobre 2008 – par Fil, _Eric_ – 44 commentaires

20 votes

Partout sur le Web, lorsqu’on clique sur un lien qui mène vers une ancre dans la même page, le navigateur « saute » brutalement jusqu’à cette ancre. Le visiteur perd la notion de l’endroit où il se trouve et ne visualise pas la structure globale de la page. En termes d’ergonomie c’est assez mauvais, et on attend le navigateur qui trouvera la solution.

Dans l’immédiat, chacun peut améliorer cela sur son propre site SPIP. Le plugin Ancres douces fait une chose (et une seule) : il transforme toutes les ancres (<a href="#xxx">) des pages en « ancres douces », où le navigateur fait défiler doucement la page jusqu’à l’ancre. Ainsi le lecteur sait en permanence où il se trouve dans la page, et peut plus facilement remonter, etc.

On peut voir ce plugin en action sur le site des blogs du Monde diplo (cliquer sur « XX commentaires » ou sur les appels de note, par exemple).

Ce plugin est une intégration à SPIP de deux scripts jQuery d’Ariel Flesler, avec lesquels il est possible de faire plein d’autres jolis scrolls (voir les démos) :
— localScroll
— scrollTo

Restreindre ancres_douces à certains blocs

Si vous utilisez d’autres scripts javascripts utilisant aussi les ancres (par exemple un slider jquery), il est possible que des interférences se produisent avec ancres_douces.

Pour éviter ces interférences, il est nécessaire d’indiquer sur quel bloc ou quels types de blocs on veut restreindre le fonctionnement de ancres_douces.

Pour cela, on doit définir dans mes_options.php la constante "CONTEXTE_ANCRES_DOUCES".

Exemple :
-  Pour restreindre au bloc d’id contenu ( convient sur un grand nombre de squelettes spip ) :
define (’ANCRES_DOUCES_CONTEXTE’,’#contenu’) ;
-  pour restreindre à tous les éléments de classe ’ancres_douces’
define (’ANCRES_DOUCES_CONTEXTE’,’.ancres_douces’) ;

Bugs connus :
-  fonctionne mal avec Opera. (corrigé en 1.2)

Voir en ligne : http://plugins.spip.net/ancresdouces

P.-S.

À noter, le plugin Ancres douces est aussi intégré sous forme d’une lame du Couteau suisse.

Retour en haut de la page

Vos commentaires

  • Le 19 mars à 15:31, par Matthieu En réponse à : Ancres douces

    Bonjour

    Ancres douces fonctionne sans pb sur mozilla, par contre pas du tout sur ie8

    j’utilise spip 3

    merci

    Répondre à ce message

  • Le 18 septembre 2012 à 11:46, par Julien En réponse à : Ancres douces

    Bonjour,

    J’ai un souci avec le plugin. J’essaye désespérément de restreindre mes ancres douces pour qu’il évite d’agir sur un slideshow présent sur ma page. Mais rien n’y fait.

    J’ai un slideshow qui utilise des ancres pour faire défiler mes panels. Seulement chaque fois que je clique sur suivant/précédent, bien évidement le scroll vient se caler au niveau du slideshow alors que c’est pas voulu du tout.

    J’aimerais utiliser mes ancres douces uniquement pour mes news qui se trouve dans une div avec la classe « news ». J’ai bien essayé la fonction a mettre dans « mes_options.php » mais ça ne change rien.

    <?php
    define (’ANCRES_DOUCES_CONTEXTE’,’news’) ;
    ?>

    Je veux bien un peu d’aide, merci !

    • Le 24 octobre 2012 à 07:22, par chris En réponse à : Ancres douces

      Pour que l’ancre douce du plugin « Ancres douces » ne s’appplique pas au slider, il suffit de remplacer :

      var $localScroll = $.localScroll = function( settings )
      $(’body’).localScroll( settings ) ;
       ;
      par

      var $localScroll = $.localScroll = function( settings )
      $(’.news’).localScroll( settings ) ;
       ;
      dans jquery.localscroll.js du plug.

    Répondre à ce message

  • Le 1er août 2012 à 11:20, par scalp En réponse à : Ancres douces

    Bonjour est-il possible d’adapter les ancres douces au système de pagination de skip dans l’idée de faire un slide ?

    Répondre à ce message

  • Le 1er août 2012 à 11:18, par scalp En réponse à : Ancres douces

    Bonjour,
    Est-il possible d’adapter les ancres douces au système de pagination de spip dans l’idée de faire un slide ?
    D’avance merci.

    Répondre à ce message

  • Le 1er août 2012 à 11:16, par scalp En réponse à : Ancres douces

    Bonjour est-il possible d’adapter les ancres douces, (dans l’idée de faire un slide) sur le système de pagination de spip ?

    D’avance merci

    Répondre à ce message

  • Le 15 juillet 2012 à 09:31, par chris En réponse à : Ancres douces

    Bonjour, dans spip 3, je rajoute le code

    <?php
    define(’CONTEXTE_ANCRES_DOUCES','#une-grosse-colonne’);
    ?>

    dans config/mes options.php et quand je recharche ma page publique j’ai une alerte

    Parse error : syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /home2/machin/public_html/tagada/config/mes_options.php on line 10

    Une idée ?

    • Le 15 juillet 2012 à 10:58, par chris En réponse à : Ancres douces

      Solution :
      Ne pas modifier le fichier mes_options.php mais dans jquery.localscroll.js

      remplacer

      var $localScroll = $.localScroll = function( settings ){
              $('body').localScroll( settings );
      };

      par

      var $localScroll = $.localScroll = function( settings ){
              $('#une-grosse-colonne').localScroll( settings );
      };

    Répondre à ce message

  • Le 13 septembre 2011 à 10:17, par Gil FOURGEAUD En réponse à : Ancres douces

    Bonjour,

    Les ancres douces ne fonctionnent pas avec du Rewrite url chez moi ...

    /?page=rubrique&id_rubrique=7 fonctionne

    rubrique/article ne fonctionne pas

    Merci

    • Le 12 mars 2012 à 11:33, par Yohooo En réponse à : Ancres douces

      Ce n’est pas « ancre douce » qui ne fonctionne pas, Mais l’ensemble les ancres de Spip qui ne fonctionnent pas avec un rewrite URL.

    Répondre à ce message

  • Le 21 juillet 2011 à 16:58, par Julien En réponse à : Ancres douces

    Bonjour,

    j’ai mis dans config/mes_options.php :

    1. <?php
    2. define (’ANCRES_DOUCES_CONTEXTE’,'ancres_douce’) ;
    3. >

    Et j’ai affecté la class « ancres_douce » à certains éléments div de mon squelette mais cela ne marche pas. Cela agi sur tout la page !

    Une idée ?

    Merci beaucoup

    • Le 5 décembre 2011 à 20:12, par Christian En réponse à : Ancres douces

      Il y a une erreur dans les exemples avec CONTEXTE_ANCRES_DOUCES !
      il est indiqué :

      1. define (’ANCRES_DOUCES_CONTEXTE','ancres_douce’) ;

      alors qu’il faut :

      1. define (’CONTEXTE_ANCRES_DOUCES','ancres_douce’) ;

    Répondre à ce message

  • Le 26 juillet 2011 à 10:48, par junthro En réponse à : Ancres douces

    Bonjour,
    j’ai un problème avec le plugin Ancres Douces sur Spip 2.1.8 : le défilement fonctionne sans problème lorsque je suis loggé en admin, mais si je me déconnecte un message s’affiche :

    Fatal error : Call to undefined function : url_absolue() in .... plugins/auto/ancres_douces/ancres_douces_pipelines.php on line 5

    Précision : le Couteau Suisse est installé (indispensable), mais sa fonction « ancres douces » est désactivée. Inversement, lorsque je désactive le plugin Ancres Douces pour n’activer que la fonction du Couteau Suisse, le défilement doux ne s’opère pas. Et lorsque les deux sont activées : message d’erreur du plugin.

    Et sinon mes pages sont en DOCTYPE XHTML transitional.

    Ne voyant pas à quelle URL absolue il est fait allusion dans le pipeline.php, et ne connaissant rien non plus au javascript (cf jquery.scrollto.js), vos éclaircissements sont les bienvenus...

    Répondre à ce message

  • Le 9 février 2011 à 12:35, par JLuc En réponse à : Ancres douces

    Hello,

    ce plugin fait des scrolls doux pour TOUTES les ancres douces. Or parfois, avec un autre plugin de diaporama ou de slider à onglets par exemple, on ne veut PAS que la fenêtre scrolle automatiquement lorsqu’on clique sur les thumbnails des pĥotos ou sur les onglets.

    Y a t il un moyen d’exclure un lot d’ancres nommées du scroll doux ?
    par exemple exclure les ancres commençant par ’onglet-’, ou au contraire, ne retenir que celles qui commencent par ’ancredouces-’...

    • Le 9 février 2011 à 12:44, par JLuc En réponse à : Ancres douces

      Peut être serait il plus facile d’exclure toutes les ancres qui sont à l’intérieur d’un <div>, par exemple, de classe exclusion_ancre_douce

    • Le 10 février 2011 à 20:00, par JLuc En réponse à : Ancres douces

      En fait, le plugin localscroll utilisé dans ce plugin est déjà prévu pour limiter les scrolls doux aux ancres dans un élément. L’exemple donné est :
      $('#navigation').localScroll();

      L’objectif visé n’est donc pas immensément lointain...

    • Le 16 février 2011 à 23:49, par JLuc En réponse à : Ancres douces

      mais ça ne scrolle plus doux si je modifie le javascript ainsi... donc je ne sais plus comment faire.

    • Le 18 février 2011 à 18:17, par JLuc En réponse à : Ancres douces

      La fonctionnalité est intégrée au plugin et documentée. Configuration basique par le mes_options.php

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d'abord sur gravatar.com (gratuit et indolore) et n'oubliez pas d'indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Transaction : créer des formulaires avec paiement en ligne

    13 mars 2011 – 94 commentaires

    Transaction est une extension du plugin de création de formulaires Formidable pour concevoir des formulaires de paiement en ligne et les connecter aux principales API bancaires françaises. Présentation Transaction introduit 3 nouveaux types de (...)

  • GIS 4

    11 août 2012 – 335 commentaires

    Présentation et nouveautés La version 4 de GIS abandonne la libraire Mapstraction au profit de Leaflet. Cette librairie permet de s’affranchir des librairies propriétaires tout en gardant les mêmes fonctionnalités, elle propose même de nouvelles (...)

  • Le plugin a2a pour lier des articles

    4 octobre 2009 – 73 commentaires

    Ce plugin permet de lier des articles de façon ponctuelle sans avoir à utiliser les mots-clés de SPIP. Il peut être utilisé pour mettre en place des liens de type "Lire aussi" comme dans le squelette Sarka-SPIP. Installation Installation et (...)

  • Formulaire de contact avancé

    23 mars 2009 – 1173 commentaires

    Un formulaire de contact configurable, avec de multiples options.

  • Brownie

    6 juillet 2012 – 35 commentaires

    Brownie est une adaptation pour Zpip du thème du même nom initialement développé par Egrappler.com. Présentation Brownie est un thème Responsive à deux colonnes. La démonstration ci-dessous utilise la version 2.0.0 de Brownie, la dist de SPIP3 et le (...)