Naviguer dans les familles en galerie avec un smartphone

Toutes vos questions concernant le fonctionnement de la galerie.
Avatar du membre
pierred
Webmestre galerie
Enregistré le : mercredi 20 avril 2005, 6:58
Localisation : Paris
Contact :

Naviguer dans les familles en galerie avec un smartphone

Message par pierred » dimanche 25 mars 2018, 15:55

@eugène,
N'est-ce pas ce qui se passe seulement sur les premières lignes de la page ?
Parce que, dans mes essais, le comportement désagréable commence quand on a déroulé un peu la page.

@Axel,
Le problème est que la bibliothèque overlib est pour le moins touffue. Elle ne permet pas de redimensionner les images. Donc, on doit choisir au moment de la production de la page (je prends les images de moyenne résolution).
La solution serait de la charger ou pas (si on veut bien ignorer les erreurs provoquées par l'appel de code dans une bibliothèque absente). Mais on ne peut pas, ou pas vraiment, charger une bibliothèque JS à partir d'un script JS. J'ai essayé et ça ne marche que quand je débogue (parce que, dans ce cas, les délais d'exécution ne sont pas les délais normaux). Autrement dit, dès que j'enlève les points d'arrêt, ça ne marche plus.
Pierre D.

Avatar du membre
pierred
Webmestre galerie
Enregistré le : mercredi 20 avril 2005, 6:58
Localisation : Paris
Contact :

Naviguer dans les familles en galerie avec un smartphone

Message par pierred » dimanche 25 mars 2018, 16:00

Je viens d'installer sur le serveur un second fichier d'essai (qui exploite les chaînes d'agent utilisateur (l'identification fournie par les navigateurs qui passent sur le site) :
[lien supprimé]

Normalement, il doit dire si c'est un portable, une tablette ou une machine de bureau.
Dites-moi ce que cela donne.
Pierre D.

Avatar du membre
latique
Animateur—Admin-galerie
Enregistré le : samedi 8 mai 2010, 13:13
Localisation : Bocage gâtinais
Contact :

Naviguer dans les familles en galerie avec un smartphone

Message par latique » dimanche 25 mars 2018, 16:11

pierred a écrit :
dimanche 25 mars 2018, 16:00
Je viens d'installer sur le serveur un second fichier d'essai (qui exploite les chaînes d'agent utilisateur (l'identification fournie par les navigateurs qui passent sur le site) :
[Lien supprimé]

Normalement, il doit dire si c'est un portable, une tablette ou une machine de bureau.
Dites-moi ce que cela donne.
Il me dit que je suis sur un ordinateur de bureau même sur le portable.
Eugène

Avatar du membre
pierred
Webmestre galerie
Enregistré le : mercredi 20 avril 2005, 6:58
Localisation : Paris
Contact :

Naviguer dans les familles en galerie avec un smartphone

Message par pierred » dimanche 25 mars 2018, 16:11

En y réfléchissant, il serait possible d'accrocher l'image affichée au survol non pas sur le nom de famille ou d'ordre, mais sur une petite puce placée au début du pavé. Dans ces conditions, il faudrait vouloir afficher l'image pour l'obtenir, plutôt que de l'avoir qui vient parfois comme un chien dans un jeu de quilles.
Pierre D.

Avatar du membre
pierred
Webmestre galerie
Enregistré le : mercredi 20 avril 2005, 6:58
Localisation : Paris
Contact :

Naviguer dans les familles en galerie avec un smartphone

Message par pierred » dimanche 25 mars 2018, 16:12

latique a écrit :
dimanche 25 mars 2018, 16:11
Il me dit que je suis sur un ordinateur de bureau même sur le portable.
J'ai peut-être mal codé la séquence des options.
Pierre D.

Avatar du membre
latique
Animateur—Admin-galerie
Enregistré le : samedi 8 mai 2010, 13:13
Localisation : Bocage gâtinais
Contact :

Naviguer dans les familles en galerie avec un smartphone

Message par latique » dimanche 25 mars 2018, 16:13

pierred a écrit :
dimanche 25 mars 2018, 15:55
@eugène,
N'est-ce pas ce qui se passe seulement sur les premières lignes de la page ?
Parce que, dans mes essais, le comportement désagréable commence quand on a déroulé un peu la page
Non, je viens de me faire une bonne partie des familles de diptères et la vignette de survol (énorme) ne fait que passer, une fraction de seconde.
Eugène

Avatar du membre
inachis ax
Admin-galerie
Enregistré le : mercredi 26 août 2009, 16:26
Localisation : Rosny (93)/IDF
Contact :

Naviguer dans les familles en galerie avec un smartphone

Message par inachis ax » dimanche 25 mars 2018, 17:10

pierred a écrit :
dimanche 25 mars 2018, 15:55
@Axel,
Le problème est que la bibliothèque overlib est pour le moins touffue. Elle ne permet pas de redimensionner les images. Donc, on doit choisir au moment de la production de la page (je prends les images de moyenne résolution).
La solution serait de la charger ou pas (si on veut bien ignorer les erreurs provoquées par l'appel de code dans une bibliothèque absente). Mais on ne peut pas, ou pas vraiment, charger une bibliothèque JS à partir d'un script JS. J'ai essayé et ça ne marche que quand je débogue (parce que, dans ce cas, les délais d'exécution ne sont pas les délais normaux). Autrement dit, dès que j'enlève les points d'arrêt, ça ne marche plus.
Je me suis amusé cet après-midi à tester une modif en JS sur une page de la galerie sauvegardée sur mon ordinateur. A priori, je tiens un truc pas trop mal.
En effet, overlib est pas simple à comprendre, mais en explorant l'arborescence html, j'ai compris ce qu'overlib faisait et comment l'image s'affichait. En fait overlib affiche un div contenant un tableau "volant" près de la position de la souris. Ce tableau contient lui même un autre tableau dont l'image de fond est l'image à afficher. Il me manquait juste un truc pour que l'image soit aux dimensions du tableau pour pouvoir faire ce que j'imaginais, c'est un simple élément de style (background-size: cover;).
Tout ça sans avoir à toucher au package overlib.

Je te propose de tester ce code de ton côté :
Dans les "onmouseover", il faudrait remplacer les return overlib(... par quelque chose du type :

Code : Tout sélectionner

var x_im = 500; // largeur de l'image (format big)
var y_im = 288; // hauteur de l'image
var x_sc = document.body.offsetWidth; // largeur de l'écran

// un essai, à améliorer si besoin
// si l'image fait plus de deux fois la moitié de la largeur de l'écran
// on adapte ses dimensions pour qu'elle ne dépasse pas cette largeur
if(x_im > x_sc/2){
	y_im = x_sc/2/x_im * y_im; // règle de 3 pour conserver le rapport largeur/hauteur de l'image
	x_im = x_sc/2;
}

// la fonction overlib va créer des éléments html et les afficher, avec l'image en fond d'un des tableaux
var a = overlib('',WIDTH,''+x_im,HEIGHT,''+y_im,RIGHT,ABOVE,FGBACKGROUND,'./Galerie du Monde des insectes_files/phryne_jpg.jpg');

var div_survol = document.body.firstElementChild; // le div créé par overlib se met en tête du body
var img = div_survol.getElementsByTagName('table')[1]; // l'image s'affiche en fond du deuxième tableau trouvé avec getElementsByTagName
img.style.backgroundSize = 'cover'; // l'image prend les dimensions du tableau et n'est plus tronquée

return a; // fin du script (équivalent au return overlib(...);
Où les "x_im = 500;" et var "y_im = 288;" sont les largeurs et hauteurs à adapter en fonction des valeurs calculées en php.
D'autres trucs sont éventuellement à adapter de manière dynamique, comme de RIGHT/LEFT de overlib.
Le Paon du jour n'est dans aucune citation célèbre.
Axel :)

Avatar du membre
pierred
Webmestre galerie
Enregistré le : mercredi 20 avril 2005, 6:58
Localisation : Paris
Contact :

Naviguer dans les familles en galerie avec un smartphone

Message par pierred » dimanche 25 mars 2018, 17:53

Axel,

Merci pour ce travail.
Je vais regarder ce que cela donne.
Dans un sens, je serais tellement content que l'on puisse se débarrasser d'overlib !!
Pierre D.

Avatar du membre
pierred
Webmestre galerie
Enregistré le : mercredi 20 avril 2005, 6:58
Localisation : Paris
Contact :

Naviguer dans les familles en galerie avec un smartphone

Message par pierred » lundi 26 mars 2018, 14:56

J'ai codé un exemple de ce que je disais plus haut, à savoir de lier l'affichage au survol non pas à toute la ligne, mais à une puce placée au début. Normalement, cette puce devrait disparaître sur les portables.
[Lien supprimé]

J'ai essayé de dessiner quelque chose comme un œil pour indiquer qu'il y a quelque chose à voir, mais mes talents de graphistes n'ont pas permis d'aller plus loin que la velléité.

Finalement, j'ai trouvé une police qui donne un œil (qui donne un œil donne un bœuf).
Pierre D.

Avatar du membre
latique
Animateur—Admin-galerie
Enregistré le : samedi 8 mai 2010, 13:13
Localisation : Bocage gâtinais
Contact :

Naviguer dans les familles en galerie avec un smartphone

Message par latique » lundi 26 mars 2018, 16:41

Ton lien test2 sur smartphone m'amène chez les les ARACHNIDA et rien n'est actif !
Eugène

Répondre Sujet précédentSujet suivant

Retourner vers « La galerie »