Image en pop-up et problème récurant

HTML5, CSS3, Javascript, support des mobiles... Que penser de votre site ? Vous manquez d'informations pour la construction d'un site qui puisse s'afficher correctement partout ? C'est un problème simple, un peu complexe ? Venez ici !
Nerva
Lézard à collerette
Messages : 219
Inscription : 01 oct. 2004, 15:19

Image en pop-up et problème récurant

Message par Nerva »

Bonjour.

J'ai deux petites questions jusque là restées sans réponse.

1) J'utilise le JS pour afficher mes images en pop-up ; dans la fraction de code suivante :

Code : Tout sélectionner

ImageOpen = window.open('','_blank','toolbar=0,location=0,menuBar=0,scrollbars=0,resizable=0');
La "location" est définie à 0. Pourtant, dans FF - et pas dans IE - elle apparaît en bas de l'image et je n'ai pas encore trouvé le moyen de la supprimer.
De plus, à cause de ça, le visiteur a une marge inférieure de taille différente selon qu'il utilise FF ou IE ; pas très esthétique, tout ça...
Comment faire ?

Je précise que jusqu'à la version 0.9 de FF il n'y avait pas de problème.

---

2) Dans la ligne suivante :

Code : Tout sélectionner

html = '<html><head><title>Titre</title><meta http-equiv="Pragma" content="no-cache"></head><body background=images/background.jpg leftmargin=0 marginwidth=0 topmargin=20 marginheigth=0 oncontextmenu="return false"><center>'+'<a href="#" onClick="window.close()"><img src="'+ImagePath+'" border=3 name=Image alt="'+texte+'"border="0" onLoad="window.resizeTo(document.Image.width+50,document.Image.height+85); window.moveTo((screen.width-document.Image.width)/2,5)"></a></center></body></html>';
J'ai défini l'épaisseur de la bordure à 3, mais dans FF, par défaut, sa couleur est bleue - violet dans IE.
J'ai bien essayé de rajouter l'entrée bordercolor=#000000 ou bordercolor=black mais rien n'y fait.
Un coup de main ?

Merci
nomade
Iguane
Messages : 985
Inscription : 03 sept. 2003, 04:15

Message par nomade »

ça serait pas plutôt border-color ?

Si tu pouvais donner le lien vers ton site pour que des gens regardent de plus près ça serait pratique :)
La liberté des uns commence là où commence celle des autres.
Nerva
Lézard à collerette
Messages : 219
Inscription : 01 oct. 2004, 15:19

Message par Nerva »

Ben non, je ne peux pas de donner l'URL puisqu'il n'est pas encore en ligne !

border-color, j'avais essayé et ça ne fonctionne pas non plus...
Nerva
Lézard à collerette
Messages : 219
Inscription : 01 oct. 2004, 15:19

Message par Nerva »

Voici quand même le JS complet des pop-ups :

Dans Head

Code : Tout sélectionner

<script language="JavaScript">
var fois=0
function ImagePopup(ImageSmall,ImageLarge,ImageText)
{
document.write('<a href="javascript:ImageLargeView(\''+ImageLarge+'\',\''+ImageText+'\')"><img src="'+ImageSmall+'" hspace=0 vspace=0 border=0 alt="Affichez la photo"></a>');
}
function ImageLargeView(ImagePath,texte)
{
newImage = new Image;
newImage.src = ImagePath;
html = '<html><head><title>Site</title><meta http-equiv="Pragma" content="no-cache"></head><body background=images/background.jpg leftmargin=0 marginwidth=0 topmargin=20 marginheigth=0 oncontextmenu="return false"><center>'+'<a href="#" onClick="window.close()"><img src="'+ImagePath+'" border=3 name=Image alt="'+texte+'"border="0" onLoad="window.resizeTo(document.Image.width+50,document.Image.height+85); window.moveTo((screen.width-document.Image.width)/2,5)"></a></center></body></html>';
if (fois == 1 ) ImageOpen.close();
ImageOpen = window.open('','_blank','toolbar=0,location=0,menuBar=0,scrollbars=0,resizable=0');
ImageOpen.document.write(html);
fois=1;
}
</script>
Dans Body

Une rangée d'images...

Code : Tout sélectionner

<tr>
		<td width="45">&nbsp;</td>
		<td width="196"><div align="center"><script language=JavaScript>ImagePopup("images/image1_sm.jpg","images/images/image1_la.jpg"","Fermez la photo");</script></div></td>
		<td width="198"><div align="center"><script language=JavaScript>ImagePopup("images/image2_sm.jpg","images/images/image2_la.jpg"","Fermez la photo");</script></div></td>
		<td width="196"><div align="center"><script language=JavaScript>ImagePopup("images/image3_sm.jpg","images/images/image3_la.jpg"","Fermez la photo");</script></div></td>
		<td width="45">&nbsp;</td>
	</tr>
Nucleos
Lézard à collerette
Messages : 282
Inscription : 04 juil. 2003, 17:04

Message par Nucleos »

Pour faire court, je ne comprends pas ton problème. Tu nous fais une capture d'écran ?
« La clarté est la politesse des professeurs. » (E. Gerurez)
... Posons de bonnes questions !
Nerva
Lézard à collerette
Messages : 219
Inscription : 01 oct. 2004, 15:19

Message par Nerva »

Pop-up dans Firefox :

La barre d'état apparait alors qu'elle est définie à 0

- Je n'arrive pas à définir des marges égales pour les deux navigateurs.
- Je n'arrive pas à obtenir un liseré noir.
Dernière modification par Nerva le 07 mars 2005, 14:31, modifié 1 fois.
Nucleos
Lézard à collerette
Messages : 282
Inscription : 04 juil. 2003, 17:04

Message par Nucleos »

Huhu ok. Je viens de comprendre les différents antécédents des pronoms ésotériques de ton premier message.

Donc effectivement, Firefox contient une option supprimant la possibilité de masquer la barre d'états, cf Outils > Options > Fonctionnalités web > Avancé... (Javascript) > Masquer la barre d'état.

Quant au liséré autour de la chose, il suffit de rajouter une règle CSS. Quel est l'élément qui est entouré de la bordure bleue-violette ?
« La clarté est la politesse des professeurs. » (E. Gerurez)
... Posons de bonnes questions !
Nerva
Lézard à collerette
Messages : 219
Inscription : 01 oct. 2004, 15:19

Message par Nerva »

Masquer la barre d'état... Merci de cette information !

L'élément qui est entouré de la bordure - en blanc - ce sera la photo ; en vert, l'image du background (tout ça fonctionne, fort heureusement).

Mais pour les styles CSS... Je ne sais pas les utiliser...
Nucleos
Lézard à collerette
Messages : 282
Inscription : 04 juil. 2003, 17:04

Message par Nucleos »

Nerva a écrit :L'élément qui est entouré de la bordure - en blanc - ce sera la photo ; en vert, l'image du background (tout ça fonctionne, fort heureusement).
bon imaginons que l'élément qui devrait être entouré de la bordure sera a (l'élément lien.) Alors à l'interieur de <head> :

Code : Tout sélectionner

<head>
<style type="text/css">
a { border-color: green; }
</style>
</head>
cf déf css
Nerva a écrit :Mais pour les styles CSS... Je ne sais pas les utiliser...
C'est un peu compliqué de vraiment maîtriser tout CSS, mais c'est vraiment beaucoup plus facile de faire des choses qualifiées de "accessible", "standard" et j'en passe. À mon sens ça réduit les problèmes.
« La clarté est la politesse des professeurs. » (E. Gerurez)
... Posons de bonnes questions !
Nerva
Lézard à collerette
Messages : 219
Inscription : 01 oct. 2004, 15:19

Message par Nerva »

En fait, j'ai déjà deux styles CSS type="text/css" que j'ai pioché ça et là ; un pour enlever le soulignement des liens, un autre qui personnalise les couleurs scrollbar (ce dernier est par ailleurs inopérant dans FF, mais passons).

Mais pour le style que tu viens de donner, je suppose qu'il faut intégrer une feuille CSS spécifique !?!
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Re: Image en pop-up et problème récurant

Message par calimo »

Nerva a écrit :La "location"
La "location" comme tu dis c'est pas la barre d'adresses ? Donc je ne vois pas pourquoi ça masquerait la barre d'état (statusbar)...
De toutes façons il est possible d'empêcher toutes ces suppressions dans Firefox :lol: (même si malheureusement les préférences sont la plupart cachées :( ).

Si je puis me permettre, il me semble que tu utilise un peu trop de javascript, pense aux 10% d'internautes qui l'ont désactivé et qui ne verront rien du tout c'est dommage. Pour apprendre à faire une popup "standard" et accessible je te conseille de lire cet article d'OpenWeb : http://openweb.eu.org/articles/popup/ (outre le fait qu'il est déconseillé d'ouvrir des popups mais passons :roll: )
Nucleos
Lézard à collerette
Messages : 282
Inscription : 04 juil. 2003, 17:04

Message par Nucleos »

Nerva a écrit :un autre qui personnalise les couleurs scrollbar
vi ce n'est pas standard, ça ne marche que sous Internet Explorer.
Nerva a écrit :Mais pour le style que tu viens de donner, je suppose qu'il faut intégrer une feuille CSS spécifique !?!
Non, tu peux simplement le mettre en tête de ta popup. Par contre attention : tous les liens présents dans la page qui contient le <style> seront entourés d'une bordure. Pour changer ça, tu peux par exemple assigner un attribut class="image_importante" au lien :

Code : Tout sélectionner

<a href="..." class="image_importante"><img src="..." alt="..." /></a>
Et du coup tu pourras changer la désignation de la règle CSS que je t'ai donné en :

Code : Tout sélectionner

<head>
<style type="text/css">
a.image_importante { border-color: green; }
</style>
</head>
Tu verras, si tu te penches un peu sur CSS, c'est tout simple en fait.
« La clarté est la politesse des professeurs. » (E. Gerurez)
... Posons de bonnes questions !
Nerva
Lézard à collerette
Messages : 219
Inscription : 01 oct. 2004, 15:19

Message par Nerva »

Calimo
Le "problème" c'est que j'utilise des portions de code que je ne comprends pas !
Depuis plusieurs années j'ai appris - à force de centaines et centaines d'heures ! - à utiliser Access de manière très poussée ; je n'ai ni le temps ni l'envie de faire la même chose pour chaque "langage" quand je coince quelque part...

Pour le JS à outrance, tu as parfaitement raison ; je sais coder en JS l'affichage d'un pop-up de manière beaucoup plus simple. Mais la personne pour qui j'ébauche ce site m'a demandé de faire tout ce que je pouvais pour empêcher dans la mesure du possible le piratage des images et compagnie - anihilation de la sélection du texte, anihilation du menu contextuel, etc...
Mais ça, c'est un autre débat ! N'empêche que les complications se cumulent...
Nerva
Lézard à collerette
Messages : 219
Inscription : 01 oct. 2004, 15:19

Message par Nerva »

Nucleos
Merci de ton aide ; je vais essayer de placer ça

Code : Tout sélectionner

<a href="..." class="image_importante"><img src="..." alt="..." /></a>
où il faut, car là, je patauge !
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

Nerva a écrit :Mais la personne pour qui j'ébauche ce site m'a demandé de faire tout ce que je pouvais pour empêcher dans la mesure du possible le piratage des images et compagnie - anihilation de la sélection du texte, anihilation du menu contextuel, etc...
:lol: :lol: :lol:

Hé ho, piratage, piratage... c'est un terme à la mode, surtout dans l'industrie musicale, mais il ne faudrait pas exagérer non plus :x
Un pirate c'est un criminel de haute mer, crime puni par la pendaison, ça n'a rien à voir avec une petite infraction aux copyrights quand-même. Voir aussi cet article


Pour en revenir aux méthodes pour empêcher la copie, il n'y a qu'une seule technique efficace pour ça, et elle est décrite dans cet article :wink:
Donne cet article à lire à celui pour qui tu fais la page, de même que celui-ci. Il ne se rend probablement pas compte des problèmes que ça cause, 10% des gens privés de visite ce n'est pas rien quand-même :roll:

Franchement les sites qui "bloquent" le clic droit, ça me donne qu'une seule envie, celle de copier les images "pour le fun", même si elles partent à la corbeille dans les 5 minutes. Franchement ce n'est pas productif, au contraire, tout au plus chiant pour l'utilisateur.
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 2 invités