L'éditeur JavaScript
Visiteur non-identifié | Identifiez-vous | Devenir membre
Code perdu ? | Combien de visiteurs sur votre site ?
Rechercher :
Page d'accueil
     Home Page

JavaScript
     Tous les scripts
     Proposer un script
     Recherche de script
     AJAX
     Cours de JavaScript
     Liste de discussion
     Forums

Services :
     CountUs
     myCircle
     ClickInText
     XooIt

Trucs et astuces :
     HTML / CSS
     PHP / MySQL
     Réferencement
     Graph / Présentation
     Toutes les astuces
     Ajouter un article

MailingList :
113627 abonnés

Annuaire webmaster :      Hebergement web
     Referencement
     Sites webmasters
     XHTML - CSS2
     PHP
     Affiliation - Pub
     FAI

     Annuaire webmaster

Ressources pour webmasters :
     Kit graphique
     Foire aux questions
     Les membres
     Devenir annonceur
     Faire un lien
     Contact

Partenaire :
     Compteur live
     Créer un forum
     Le PHP facile
     Comscripts
     Liens sponsorisés
     Page Rank
     Gifs animés, f...
     Le village de ...
     Easy-script.com
     Poésie et cita...
     Les kits graph...
     La cuisine de ...
     Azote.org - no...
     Web creation ...
     Créer son site...
     Electroniq...
     Les autres
     Votre site ici ?


Le forum ] [ Préférences ] [ Nouveau sujet ] [ Répondre ] [ Recherche ] [ Vos sujets ] [ Tous lus ] [ Flux RSS ]


[ Forums >> JavaScript >> Problèmes de création JavaScript / DHTML >> js pour script de galerie bis (SirJojo HELP) ]

Pages : 1-2     
> js pour script de galerie bis (SirJojo HELP)
[ Posté par aiglobulles ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 02-10-2004 à 01:37 | 26 messages ]

Helloooooooooooooo,

ce message s'adresse bien naturellement à tout le monde, avec un tit plus pour SirJojo qui m'a déjà bien maché le travail une première fois

Voilà, j'avais demandé un tit script simpliste me permettant d'afficher une image agrandie sur une même page sans être limité par le besoin de lister le nombre des images.

SirJojo m'a donc proposé cet excellent script qui répond exactement à mes besoins, ou presque:


<head>
<script type="text/javascript">
function chargeImage(i) {
window.document.getElementById('MaDiv').innerHTML = '<img src="'+ i +'">';
}
</script>
</head>

<body>
<div id="MaDiv"></div>

<a href="#" onclick="chargeImage('magrandeimage.jpg'); return false;"><img src="mavignette.jpg"></a>
</body>


Mon nouveau problème, c'est que, certaines images taille réelle sont vraiment immense genre 1024x768 et le but est donc d'éviter l'apparition de disgracieuse scrollbarr et même un affichage global de la galerie totalement chamboulé.

Y aurait-il donc un quelconque moyen de forcer un redimensionnement automatique de l'image de manière à ne pas dépasser Xpx de largeur et Ypx de hauteur ?

J'ai trouvé ce script en farfouillant dans le moteur de l'EJS:

http://www.asp-php.net/scripts/scripting/jsimgredim.php

mais je ne sais pas du tout quoi en faire... pourriez vous m'aider ?

Merci d'avance

aiglobulles

PS: La galerie en question...

[Message édité par aiglobulles le 02-10-2004 à 01:49]




[ Posté par leris ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 02-10-2004 à 01:57 | 1476 messages ]

salut,

je ne veux pas critiquer SirJojo qui est une personne fort respectable et qui aide beaucoup sur les forums (et il n'y en a pas beaucoup ... ) mais je ne trouve pas tres normal d'agir sur le innerHTML pour changer une photo , agir sur la src serait plus logique , non ?

<script type="text/javascript">
function chargeImage(i) {
window.document.getElementById('mypic').src = i;
}
</script>
</head>
<body>
<img src="vide.gif" id="mypic"></div>
<a href="#" onclick="chargeImage('image.jpg'); return false;"><img src="01.gif"></a>
</body>
</html>


là il est tard , si demain tu n'as pas de reponse , je m'y colle ...

++

L.

________________
__(^[-_-]^)__
-*(_)^*^(_)*-

[ Posté par SirJoJO ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 02-10-2004 à 08:59 | 1827 messages ]

Salut !

je ne veux pas critiquer SirJojo qui est une personne fort respectable et qui aide beaucoup sur les forums (et il n'y en a pas beaucoup ... ) mais je ne trouve pas tres normal d'agir sur le innerHTML pour changer une photo , agir sur la src serait plus logique , non ?


Justement, oui
c'est pour çà que je disais que je ne comprenais pas très bien ce qu'il voulait faire dans son précédent topic !

(tu remarqueras aussi l'heure à laquelle j'ai posté)

Pour la question, la solution est simple :
Tu changes le src de l'image comme le dit leris, à cette image tu associes un style :
<style type="text/css"
#monImage {
width:100%;
height:100%;
}
</style>

<img name="monImage" id="monImage" />


Et puis, là, tu changes dynamiquement les width et height :
window.document.getElementById('monImage').style.height='50%';
window.document.getElementById('monImage').style.width='50%';


[Message édité par SirJoJO le 02-10-2004 à 09:30]


________________
Rechercher

[ Posté par aiglobulles ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 02-10-2004 à 10:27 | 26 messages ]

Hello,

merci d'avoir répondu si rapidement. Ceci dit je crains que mon problème soit un peu plus compliqué.

En fait, dans la partie <head> de ma page, j'ai placé le script que tu m'as indiqué la première fois et dans le body, j'ai cela:


<a href="javascript:chargeImage('#URL_DOCUMENT')">
#LOGO_DOCUMENT
</a>


et un peu plus loin


<div id="Album">
</div>


#URL_DOCUMENT écrit de manière dynamique l'url de l'image agrandie. #LOGO_DOCUMENT fait apparaitre la vignette.

Mais à aucun moment je n'introduit la balise <img src="monimagegrande.jpg">. Mon problème c'est que je ne sais pas comment placé le second script que tu me proposes.

Désolé d'être exigeant

aiglobulles

[ Posté par aiglobulles ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 02-10-2004 à 22:11 | 26 messages ]

hello,
j'ai essayé de faire ce que vous m'avez dit mais là, ça plante et je suis franchement bloqué...
Voici l'extrait du source:



<head>
<!-- la css -->
<style type="text/css">
.ImageMoyenne
{
position:absolute;
display:block;
width:506px;
height:506px;
text-align:center;
vertical-align:center;
top:10px;
left:350px;
border: 2px solid #3333ff;
}
#ImageDim
{
width:100%;
height:100%;
}
</style>
<!-- fin css-->
<!-- le script -->

<script type="text/javascript">
function chargeImage(i) {
window.document.getElementById('Album').innerHTML = '<img src="'+ i +'">';
window.document.getElementById('ImageDim').style.height='500px';
window.document.getElementById('ImageDim').style.width='500px';
}
</script>
<!-- la fin du script -->
</head>

et dans le body:

[b]
<body>
<!-- le lien vignette vers image redimensionnee -->
<div class="ContourVignette">
<a href="javascript:chargeImage('#URL_DOCUMENT')">
#LOGO_DOCUMENT
</a>
</div>
<!-- fin du lien -->

<-- le div ou s'affiche l'image redimensionnee -->
<div id="Album">
<img name="ImageDim" id="ImageDim" />
</div>
<-- fin du div -->
</body>
{/b]{/i]

En fait maintenant y a plus rien qui se charge dans le div des images agrandies....

J'suis dsl, j'y connais à vrai dire rien en js, je suis censé m'y mettre cette année ainsi qu'au dhtml
Merci d'avance pour votre aide et vos conseils

aiglobulles

[i][Message édité par aiglobulles le 02-10-2004 à 22:12]



[Message édité par aiglobulles le 02-10-2004 à 22:13]


[ Posté par leris ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 02-10-2004 à 22:30 | 1476 messages ]

re,

voici ce que j'ai fait.

peur etre prevoir un pre-chargement , les images ont tendance à s'afficher avant de se redimensionner (la 1ere fois qu'elles s'affichent).

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Page Web</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type=text/css>
body{
text-align:center; color: blue; font-size: 11px; font-family: Arial, Helvetica; text-decoration:none;background-color: aliceblue;margin:0px;
}
A { color: #1C3859; font-size: 11px; font-family: Arial, Helvetica; text-decoration:none;}
A:visited {color: #1C3859; font-size: 11px; text-decoration:none;}
A:hover { color: #9400d3; font-size: 11px; text-decoration:none}
A:active {color:red; font-size: 11px;text-decoration:none;}
.pics{
width:100px; height:69px; border:none;cursor: pointer;
}
#pic{
width:100px;height:100px;border:none;
}
</style>
<script language="JavaScript">
/*
par Onkr@krikru et S.Leris.
http://www.bluejayway.new.fr
*/
function checksize(idx){
mypict = new Image();
mypict.src = idx;
var Wdh;var Hgt;var idx;
var zz;var yy;
var maxWdth = 520; // indiquer ici la largeur maximale d'affichage des photos.
var maxHght = 520; // indiquer ici la hauteur maximale d'affichage des photos.
var larg = mypict.width;
var haut = mypict.height;

if (haut<maxHght && larg<maxWdth) // teste si plus petite
{
Wdh = larg;
Hgt = haut;
affiche(idx,Wdh,Hgt);
return true;
}
else if (haut>maxHght && haut>larg) // teste si plus haut que large.
{
Hgt = maxHght;
zz = maxHght/haut;
Wdh = parseInt(larg*zz);
}
else
{
Wdh = maxWdth;
yy = maxWdth/larg;
Hgt = parseInt(haut*yy);
}
affiche(idx,Wdh,Hgt);
}

function affiche(idx,Wdh,Hgt){
document.getElementById('pic').src = idx;
document.getElementById('pic').style.width = Wdh;
document.getElementById('pic').style.height = Hgt;
}
</script>
</head>
<body>
<br>
<img src="101s.jpg" class="pics" onClick="checksize('101.jpg');">
<img src="102s.jpg" class="pics" onClick="checksize('8.jpg');"><br><br>
<img src="103s.jpg" class="pics" onClick="checksize('202.jpg');">
<img src="104s.jpg" class="pics" onClick="checksize('caro01.jpg');">
<!-- COMMENTAIRES A RETIRER //////////
dans ton cas cela devrait donner :
<a href="javascript:checksize('#URL_DOCUMENT')">
#LOGO_DOCUMENT
</a>
ou
<a href="#" onClick="checksize('#URL_DOCUMENT');return false;">
#LOGO_DOCUMENT
</a>
-->
<br><br>
<img id="pic" src="vide.gif">
</body>
</html>


si quelqu'un se sent l'âme d'un "correcteur/simplificateur" , ne pas hésiter ...

++

L.

edit,
toujours ce prob des 2 points avant un p ...

[Message édité par Leris le 02-10-2004 à 22:32]


________________
__(^[-_-]^)__
-*(_)^*^(_)*-

[ Posté par SirJoJO ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 02-10-2004 à 22:35 | 1827 messages ]

Bonsoir,

Comme l'a dit leris, il est préférable de changer le src de l'image plutôt que de modifier le code html avec innerHTML.

Et en fait, même pas besoin de définir un style pour l'image.

<head>
<!-- la css -->
<style type="text/css">
.ImageMoyenne
{
position:absolute;
display:block;
width:506px;
height:506px;
text-align:center;
vertical-align:center;
top:10px;
left:350px;
border: 2px solid #3333ff;
}

</style>
<!-- fin css-->
<!-- le script -->

<script type="text/javascript">
function chargeImage(i) {
window.document.getElementById('ImageDim').src = i;
window.document.getElementById('ImageDim').style.height='500px';
window.document.getElementById('ImageDim').style.width='500px';
}
</script>
<!-- la fin du script -->
</head>


<body>
<!-- le lien vignette vers image redimensionnee -->
<div class="ContourVignette">
<a href="#" onclick="chargeImage('coyote_2.jpg');return false;">
<img name="vignette" src="coyote_2_vignette.jpg" id="vignette" />
</a>
</div>
<!-- fin du lien -->

<-- le div ou s'affiche l'image redimensionnee -->
<div id="Album">
<img name="ImageDim" src="" id="ImageDim" />
</div>
<-- fin du div -->
</body>




Edit: pas vu ton code, tu as posté entre temps

[Message édité par SirJoJO le 02-10-2004 à 22:39]


________________
Rechercher

[ Posté par aiglobulles ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 02-10-2004 à 23:00 | 26 messages ]





[Message édité par aiglobulles le 03-10-2004 à 01:39]


[ Posté par aiglobulles ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 02-10-2004 à 23:03 | 26 messages ]

hello,

l'est 3h27, j'ai passé de nombreuses heures à potasser des sites et des bouquis sur js et dhtml. J'ai fait je sais pas combien d'essais et finalement.. je suis revenu au script de leris avec la fonction checksize et ça marche impeccablement bien.

Je sais pas pkoi ça marchait pas avant, pê parceque je suis une burne né qui sait ??

En tous cas, merci bcp à vous deux pour votre patience. Je vous tiendrai inormés de l'évolution de la galerie si vous le souhaitez.


@bientôt

aiglobulles qui va au dodo

[Message édité par aiglobulles le 03-10-2004 à 03:29]


[ Posté par Lepatoche ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 20-10-2004 à 14:03 | 11 messages ]

Juste histoire de ramener ma "science" !
Sans parler des scripts, je trouve dommage que sur un site on trouve "encore" des images en 1024 x kkchose.
Il faut penser qu'il y a encore une forte concentration d'internaute qui n'ont qu'un modem 56k. Et charger une grosse image....

Pour ma part, je limite la taille de mes images en 640 x 680 (et même moins) ce qui est largement suffisant pour l'affichage web. Les fichiers font rarement plus de 20Ko.

Voila.

Bonne continuation


oops... j'ai merdé dans la signature

[Message édité par Lepatoche le 20-10-2004 à 14:05]


________________
Patoche

Webmaster de http://www.lofficiel.fr.st

[ Posté par aiglobulles ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 20-10-2004 à 14:12 | 26 messages ]

Lepatoche a dit

Pour ma part, je limite la taille de mes images en 640 x 680 (et même moins) ce qui est largement suffisant pour l'affichage web. Les fichiers font rarement plus de 20Ko.

Voila.

Bonne continuation
[Message édité par Lepatoche le 20-10-2004 à 14:05]


Lepatoche, il me semble avoir expliqué un peu plus haut les raisons pr lesquelles je propose des images de grande taille. En fait, il faut déjà prendre en compte que je ne propose pas qu'une taille d'image mais plusieurs, de manière à autoriser un affichage correct sur l'ensemble des écrans d'ordi.
Ensuite, des images de 640x480 ne permettent pas une bonne impression papier (je parle de qualité photo) d'où l'intérêt d'images de bonne résolution.

Enfin, on ne peut pas éternellement se brider sous prétexte que l'affichage est un peu plus lent pr les personnes encore sous modem 56k, d'autant plus que, à priori, d'ici peu, tout le monde aura accès au très haut débit, qu'on soit en ville ou à la campagne... alors encore un peu de patience

Bonne fin de journée, cordialement

aiglobulles



[ Posté par Lepatoche ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 20-10-2004 à 15:16 | 11 messages ]

J'aime bien la ramener pour le plaisir

En fait je n'ai rien contre le fait de proposer des images en grande taille, mais je continue de penser que pour l'affichage une petite taille suffit.

Ensuite, on peut mettre un lien (texte) sur l'image grande taille pour que l'internaute la télécharge.

Quoiqu'il en soit tu essayes de limiter la taille d'affichage de ton image mais elle est complêtement chargée quand même.

Enfin c'est mon point de vue !

Pour ce qui est du haut débit, je ne sais plus où j'ai lu ça mais aujourd'hui, il me semble que le taux d'internaute en haut débit soit encore inférieur à 20% en france. Ca fait encore beaucoup de monde qui attend que ton image se télécharge

Tu as des actions chez France Telecom ?

________________
Patoche

Webmaster de http://www.lofficiel.fr.st

[ Posté par aiglobulles ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 20-10-2004 à 22:49 | 26 messages ]

;) pas d'action chez ft lepatoche, rassures toi, jette un oeil par là, ça devrait te faire plaisir --> http://www.clubic.com/actualite-16932-adsl2-ultra-haut-debit-chez-free-maj-.html

pour le poids des images oui, effectivement, faut attendre un peu... mais bon, ça a du bon aussi de savoir attendre car on savoure d'autant plus une fois qu'on l'a...

Je ne sais plus qui à écrit un truc du genre.. "tte ma vie je me suis pressé de peur d'arriver en retard... aujourd'hui je suis mort et je n'ai même pas pris le temps de savourer la vie" Bref, un truc du style à force de s'presser ou de vouloir que tout aille vite, on ne sait plus profiter de l'instant présent... alors moi, je milite hait et fort pour les images de 300Ko minimum pour que les gens réapprennent à attendre :d :d :d :d

@llé bonne soirée à toi

aiglobulles

[ Posté par Lepatoche ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 21-10-2004 à 09:05 | 11 messages ]

Effectivement ca me fait plaisir.... mais comme tu peux le lire c'est pas encore pour tout le monde.

Mais si tu es pour les fichiers d'au moins 300Ko......


Pero je travaille sur des fichiers d'environ 300Mo (en moyenne mais ca peut monter jusqu'à 600/700 Mo).. Mais ceux là je ne les mets pas en ligne


________________
Patoche

Webmaster de http://www.lofficiel.fr.st

[ Posté par chgaillet ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 21-10-2004 à 10:56 | 154 messages ]

Ouille....ouille....ouille !!!!
J'allais demander le poids de cette image en 1024 et quand je lis que tes images font 300K j'ai très mal !!
Il n'est pas question d'être impatient, mais si une image ou un site tarde à se charger beaucoup d'internautes à 56k ne verront jamais cette image ou ce site ! Crois-tu que ton image vaut de l'or pour que l'on se fasse un café le temps qu'elle se charge ? Les logiciels qui optimisent les photos n'ont pas été créés pour les chiens...
Il y a des exagérations qui ne sont pas tolérables !

________________
On reste débutant toute sa vie... car chaque jour on apprend...

http://chgaillet.free.fr


Pages : 1-2     


Services email :

Vous devez vous identifier pour profiter des services par email du forum.
Le forum ] [ Préférences ] [ Nouveau sujet ] [ Répondre ] [ Recherche ] [ Vos sujets ] [ Tous lus ] [ Flux RSS ]






compteur gratuit
actuellement en ligne

    PUBLICITE



     ANNUAIRE WEBMAST.
MagikBiz
Integrez une section logo/sonnerie sur votre site !
http://magikbiz.com
Cat : Affiliation - publicité
Voir l'annuaire webmaster


     LES SCRIPTS :
78 à éditer
68 à copier/coller
247 des membres
2580 sur le web
>> Tous les scripts

     LES MEMBRES :
61262 membres
7204 comptes CountUs
1719 comptes myCircle

     LES FORUMS :
14 forums
39936 topics
190879 messages
>> Les forums

    SONDAGE

Vous avez un blog ou site classique ?
Un blog
Un site classique
Les deux !
La mini-astuce "Graphisme / Présentation" du jour par feidakin
Vous désirez centrer votre animation Flash, malheusement cela modifie souvent l'aspect de la page . il suffit de mettres les balises <center></center> entre les paramètres de l'animation, et le tour est joué.
Proposer votre mini-astuce | Archives des mini-astuces
© 1999-2010 EJS - Tous droits réservés | CNIL N° 844440 | 13/03/2010 05:08:54 | Design by | Gen. en 0.636 sec.