SPIP-Contrib

SPIP-Contrib

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

273 Plugins, 191 contribs sur SPIP-Zone, 30 visiteurs en ce moment

Accueil du site > Améliorations de l’espace privé > Champs extra > Image zoomable provenant d’un champ #EXTRA

Image zoomable provenant d’un champ #EXTRA

26 octobre 2004 – par ADB

0 vote

Comment insérer une image zoomable appelée par un champ #Extra Attention : le zoom ne fonctionne pas avec IE

Lorsque je me suis attaqué à mon site Guide Méditerranée, je suis passé par nombre de sites sur les CSS.

Et j’ai trouvé les codes de style CSS pour zoomer une image. Pour cela, on affiche une image réduite en permanence, qui s’agrandit à ses dimensions normales lorsque la souris passe dessus. C’est magique !

Or, mes images à moi provenaient d’un champ #Extra, qui ne permet pas l’application des fonctions reduire_image et autres. De plus, toutes les images que je veux placer n’ont pas la même dimension.

Il a donc fallu écrire un peu de php pour récupérer tout cela.

-  Attention : 1) je ne suis pas un expert en php, si bienque le code doit pouvoir s’améliorer.

2) le zoom tel qu’il est présenté ici ne fonctionne pas avec IE. Il faut une adaptation un peu différente dans son application, et surtout un fichier « image » qui contient les 2 images : la petite et la grande.

Voir à ce propos http://mammouthland.free.fr/cours/css/cours8.php

Explication du code

Le principe est assez simple. Il faut récupérer les infos qu’envoie SPIP lorsqu’il extrait le champ #EXTRA, qui ne comporte que l’indication <img20|center>.

  • On commence donc par extraire le nom de l’image, puis ses valeurs de largeur et de hauteur grâce à la commande php explode.
  • Puis on stocke ces valeurs.
  • On applique un facteur de zoom (c’est-à-dire de réduction) à ces dimensions.
  • on insère les commandes de style
  • on affiche l’image

Je pense avoir commenté suffisamment le code nécessaire. Mais n’hésitez pas à me contacter pour de plus amples informations.

Et pour voir comment ça se passe, allez à http://guidemediterranee.free.fr/ar...

Retour en haut de la page

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

  • Une licence pour un article

    18 avril 2007 – 25 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Sur une idée originale de erational, voici un plugin permettant de lier une licence à un article.

  • Plugin Parrainage

    6 novembre 2011 – <blink style='color:red;'>public|spip|ecrire:commentaire</blink>

    Permettre aux utilisateurs d’inviter leurs contacts à s’inscrire sur le site. Description Vous connaissez le web moderne et son cortège d’applis toujours en version « beta » et de buzz sur le dernier réseau à la mode ? Vous voulez vous aussi vous y (...)

  • Formulaire de contact libre

    27 avril 2011 – 36 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Dans SPIP il n’y a pas un formulaire de contact, mais autant de formulaires de contact que d’auteurs. Cette phrase de Romy, dans son article Une page de contact dans mon SPIP, pointe un petit manque de SPIP. La possibilité d’insérer rapidement un (...)

  • Plugin Mot de Passe Compliqué

    2 novembre 2007 – 16 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Ce plugin ajoute un testeur de complexité de mot de passes dans les formulaires de choix de mot de passe de SPIP.

  • Navigation AJAX

    31 janvier – 18 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Ce plugin permet de modifier automatiquement une parties des liens internes de manière à ce qu’ils ne déclenchent pas un chargement complet de la page cible, mais un chargement en AJAX de certains éléments spécifiés à l’avance. Il permet aussi de (...)