Accueil > > > AFFICHAGE D'IMAGE
AFFICHAGE D'IMAGE
Information sur la source
Description
le script sert a afficher en grand une image avec option de zoom dirigé par rapport au curseur effectue avec la molette de la sourie le clic gauche de la souris sert a deplacer l'image.le plus c'est que la mise en oeuvre du script est simple
Source
- //-------------------------------------------------------------
- // Nom Document : voile
- // Auteur : kazma
- // Objet : image voile et zoom http://www.javascriptfr.com/
- // Création : 05.10.2009
- //-------------------------------------------------------------
- // Mise à Jour : 00.00.0000
- // Objet : neant
- //-------------------------------------------------------------
- //-(*)------------------
- var imag = new Image();
- var bobo=1
- var hou=0
- function precharge(ii){
-
- if(bobo==1){
- document.documentElement.lastChild.appendChild(document.createElement('div')).setAttribute("id",'voile');
- document.documentElement.lastChild.appendChild(document.createElement('img')).setAttribute("id",'imadiv');
- var imad=document.getElementById('imadiv');
- imad.src="res/animation.gif";
- imad.style.position='absolute';
- imad.style.height=100+"px";
- sscro()
- var vo=document.getElementById('voile');
- vo.style.position='absolute';
- vo.style.top=0+"px";
- vo.style.left=0+"px";
- vo.style.backgroundColor="gray";
- if(document.all && !window.opera){
- vo.style.filter = 'alpha(opacity=10)';
- vo.attachEvent("onclick",quit);
- window.attachEvent("onresize", sscro);
- window.attachEvent("onscroll", sscro);
- }
- else{
- vo.style.opacity =0.1;
- vo.setAttribute("onclick","quit()");
- window.addEventListener("resize", sscro, false);
- window.addEventListener("scroll", sscro, false);
- }
- imag.src = "images/"+ii+".jpg";
- var nomima="images/"+ii+".jpg";
- bobo=2
- }
-
- if(navigator.oscpu||navigator.vendor){
- imag.onload=function(){
- voile(nomima)}
- bobo=1
- }
- else{
- if(imag.complete==true){
- bobo=1
- voile(nomima)
- return false
- }
- setTimeout(precharge,100)
- }
- }
-
- function quit(){
-
- if(navigator.appName.substring(0,5)=="Micro"){
- window.detachEvent("onresize", sscro);
- window.detachEvent("onscroll", sscro);
- }
- else{
- window.removeEventListener("resize", sscro, false);
- window.removeEventListener("scroll", sscro, false);
- }
- document.getElementById('voile').parentNode.removeChild(document.getElementById('voile'));
- document.getElementById('imadiv').parentNode.removeChild(document.getElementById('imadiv'));
- }
-
- function sscro(){
-
- var dde=document.documentElement;
- var vo=document.getElementById('voile')
- var imad=document.getElementById('imadiv')
- imad.style.left=((dde.clientWidth-imad.offsetWidth)/2)+'px';
- if(navigator.vendor){
- imad.style.top=(dde.clientHeight-imad.offsetHeight)/2+dde.lastChild.scrollTop+"px";
- vo.style.height=dde.clientHeight+dde.lastChild.scrollTop+"px";
- vo.style.width=dde.clientWidth+dde.lastChild.scrollLeft+"px";
- }
- else{
- imad.style.top=(dde.clientHeight-imad.offsetHeight)/2+dde.scrollTop+"px";
- vo.style.height=dde.clientHeight+dde.scrollTop+"px";
- vo.style.width=dde.clientWidth+dde.scrollLeft+"px";
- }
- }
-
- function voile(noim){
-
- var imad=document.getElementById('imadiv');
- var vo=document.getElementById('voile')
- if(hou==0){
- imad.style.filter = 'alpha(opacity=0)';
- imad.src=noim;
- imad.style.height=90+"%";
- }
-
- if(hou<1){
- hou+=0.1
- sscro()
- if(document.all && !window.opera){
- vo.style.filter = 'alpha(opacity='+(hou*50)+')';
- imad.style.filter = 'alpha(opacity='+(hou*100)+')';
- }
- else{
- vo.style.opacity =hou/2;
- imad.style.opacity =hou;
- }
- setTimeout(voile,1)
- }
- else{
-
-
- if(navigator.appName.substring(0,5)=="Micro"){
- imad.attachEvent('onmousewheel',dirizoom);
- imad.attachEvent("onmousemove",tarto);
- imad.attachEvent("oncontextmenu", function(){return false});
- imad.attachEvent('onmousewheel', selecte)
- }
- else{
- imad.setAttribute("onmousemove","tarto(event)");
- document.addEventListener("contextmenu", selecte, false)
-
- if (navigator.userAgent.indexOf("Firefox") != -1){
- imad.addEventListener('DOMMouseScroll', dirizoom, false);
- imad.addEventListener("DOMMouseScroll", selecte, false)
- }
- else{
- imad.addEventListener('mousewheel', dirizoom, false);
- imad.addEventListener("mousewheel", selecte, false)
- }
- }
- sscro()
- hou=0
- }
- }
- function tarto(s){
-
- var dde=(navigator.vendor) ? document.documentElement.childNodes[1] : document.documentElement;
- setX =((navigator.appName.substring(0,3)=="Mic") ? event.clientX : s.clientX) + dde.scrollLeft;
- setY =((navigator.appName.substring(0,3)=="Mic") ? event.clientY : s.clientY) + dde.scrollTop;
- return false;
- }
-
- function selecte(ev){
- (navigator.appName.substring(0,3)=="Mic") ? event.returnValue = false : ev.preventDefault();
- }
-
- function dirizoom(e){
- var delta = 0;
- if (!e) e = window.event;
- if (e.wheelDelta) {
- delta = e.wheelDelta/120;
- } else if (e.detail) {
- delta = -e.detail/3;
- }
- if(delta<0){
- val=-0.15;
- }
- else{
- val=0.15;
- }
- imad=document.getElementById('imadiv');
- var dirle=(imad.offsetWidth/2)-(setX-(imad.parentNode.offsetLeft+imad.offsetLeft));
- var dirto=(imad.offsetHeight/2)-(setY-(imad.parentNode.offsetTop+imad.offsetTop));
- var lf=imad.offsetWidth;
- var rf=imad.offsetHeight;
- imad.style.width=lf+(lf*val)+'px';
- imad.style.height=rf+(rf*val)+'px';
- imad.style.left=imad.offsetLeft-((imad.offsetWidth-lf)/2)+(dirle*val)+'px';
- imad.style.top=imad.offsetTop-((imad.offsetHeight-rf)/2)+(dirto*val)+'px';
- }
//-------------------------------------------------------------
// Nom Document : voile
// Auteur : kazma
// Objet : image voile et zoom http://www.javascriptfr.com/
// Création : 05.10.2009
//-------------------------------------------------------------
// Mise à Jour : 00.00.0000
// Objet : neant
//-------------------------------------------------------------
//-(*)------------------
var imag = new Image();
var bobo=1
var hou=0
function precharge(ii){
if(bobo==1){
document.documentElement.lastChild.appendChild(document.createElement('div')).setAttribute("id",'voile');
document.documentElement.lastChild.appendChild(document.createElement('img')).setAttribute("id",'imadiv');
var imad=document.getElementById('imadiv');
imad.src="res/animation.gif";
imad.style.position='absolute';
imad.style.height=100+"px";
sscro()
var vo=document.getElementById('voile');
vo.style.position='absolute';
vo.style.top=0+"px";
vo.style.left=0+"px";
vo.style.backgroundColor="gray";
if(document.all && !window.opera){
vo.style.filter = 'alpha(opacity=10)';
vo.attachEvent("onclick",quit);
window.attachEvent("onresize", sscro);
window.attachEvent("onscroll", sscro);
}
else{
vo.style.opacity =0.1;
vo.setAttribute("onclick","quit()");
window.addEventListener("resize", sscro, false);
window.addEventListener("scroll", sscro, false);
}
imag.src = "images/"+ii+".jpg";
var nomima="images/"+ii+".jpg";
bobo=2
}
if(navigator.oscpu||navigator.vendor){
imag.onload=function(){
voile(nomima)}
bobo=1
}
else{
if(imag.complete==true){
bobo=1
voile(nomima)
return false
}
setTimeout(precharge,100)
}
}
function quit(){
if(navigator.appName.substring(0,5)=="Micro"){
window.detachEvent("onresize", sscro);
window.detachEvent("onscroll", sscro);
}
else{
window.removeEventListener("resize", sscro, false);
window.removeEventListener("scroll", sscro, false);
}
document.getElementById('voile').parentNode.removeChild(document.getElementById('voile'));
document.getElementById('imadiv').parentNode.removeChild(document.getElementById('imadiv'));
}
function sscro(){
var dde=document.documentElement;
var vo=document.getElementById('voile')
var imad=document.getElementById('imadiv')
imad.style.left=((dde.clientWidth-imad.offsetWidth)/2)+'px';
if(navigator.vendor){
imad.style.top=(dde.clientHeight-imad.offsetHeight)/2+dde.lastChild.scrollTop+"px";
vo.style.height=dde.clientHeight+dde.lastChild.scrollTop+"px";
vo.style.width=dde.clientWidth+dde.lastChild.scrollLeft+"px";
}
else{
imad.style.top=(dde.clientHeight-imad.offsetHeight)/2+dde.scrollTop+"px";
vo.style.height=dde.clientHeight+dde.scrollTop+"px";
vo.style.width=dde.clientWidth+dde.scrollLeft+"px";
}
}
function voile(noim){
var imad=document.getElementById('imadiv');
var vo=document.getElementById('voile')
if(hou==0){
imad.style.filter = 'alpha(opacity=0)';
imad.src=noim;
imad.style.height=90+"%";
}
if(hou<1){
hou+=0.1
sscro()
if(document.all && !window.opera){
vo.style.filter = 'alpha(opacity='+(hou*50)+')';
imad.style.filter = 'alpha(opacity='+(hou*100)+')';
}
else{
vo.style.opacity =hou/2;
imad.style.opacity =hou;
}
setTimeout(voile,1)
}
else{
if(navigator.appName.substring(0,5)=="Micro"){
imad.attachEvent('onmousewheel',dirizoom);
imad.attachEvent("onmousemove",tarto);
imad.attachEvent("oncontextmenu", function(){return false});
imad.attachEvent('onmousewheel', selecte)
}
else{
imad.setAttribute("onmousemove","tarto(event)");
document.addEventListener("contextmenu", selecte, false)
if (navigator.userAgent.indexOf("Firefox") != -1){
imad.addEventListener('DOMMouseScroll', dirizoom, false);
imad.addEventListener("DOMMouseScroll", selecte, false)
}
else{
imad.addEventListener('mousewheel', dirizoom, false);
imad.addEventListener("mousewheel", selecte, false)
}
}
sscro()
hou=0
}
}
function tarto(s){
var dde=(navigator.vendor) ? document.documentElement.childNodes[1] : document.documentElement;
setX =((navigator.appName.substring(0,3)=="Mic") ? event.clientX : s.clientX) + dde.scrollLeft;
setY =((navigator.appName.substring(0,3)=="Mic") ? event.clientY : s.clientY) + dde.scrollTop;
return false;
}
function selecte(ev){
(navigator.appName.substring(0,3)=="Mic") ? event.returnValue = false : ev.preventDefault();
}
function dirizoom(e){
var delta = 0;
if (!e) e = window.event;
if (e.wheelDelta) {
delta = e.wheelDelta/120;
} else if (e.detail) {
delta = -e.detail/3;
}
if(delta<0){
val=-0.15;
}
else{
val=0.15;
}
imad=document.getElementById('imadiv');
var dirle=(imad.offsetWidth/2)-(setX-(imad.parentNode.offsetLeft+imad.offsetLeft));
var dirto=(imad.offsetHeight/2)-(setY-(imad.parentNode.offsetTop+imad.offsetTop));
var lf=imad.offsetWidth;
var rf=imad.offsetHeight;
imad.style.width=lf+(lf*val)+'px';
imad.style.height=rf+(rf*val)+'px';
imad.style.left=imad.offsetLeft-((imad.offsetWidth-lf)/2)+(dirle*val)+'px';
imad.style.top=imad.offsetTop-((imad.offsetHeight-rf)/2)+(dirto*val)+'px';
}
Conclusion
ouep
Historique
- 06 octobre 2009 11:20:32 :
- ajout d'une fonction drag
- 08 octobre 2009 11:26:58 :
- correction de divers bugs
- 26 novembre 2009 19:32:40 :
- deboguage
- 12 février 2010 23:33:25 :
- debogage
- 21 juin 2010 16:11:09 :
- mise a jour firefox
- 16 janvier 2011 15:40:07 :
- mise a jour chrome plus fonction globale
- 24 janvier 2011 14:30:34 :
- optimisation debogage
- 30 décembre 2011 12:12:03 :
- debogage
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Zoom genre loupe sur image [ par Annadrill ]
Bonjour, voilà, j'essaie de réaliser quelque chose de ce genre http://www.magictoolbox.com/magicmagnify/ mais je ne sais pas par ou commencer, m'y co
diaporama automatique avec liens sur chaque image [ par ju1385 ]
Bonjour, j'ai ici un script simple de diaporama d'image que j'ai récupéré et qui marche bien. Cependant, je voudrais y modifier/ajouter 2 choses (je n
Faire un zoom d'image a l'endroit du curseur [ par YanDerS ]
Je cherche depuis un bout de temps a faire un zoom sur une image a l'endroit du curseur avec la roulette de la sourie mon code actuellement me permet
Javascript: Zoom avec mini image [ par belllangelo ]
Bonjour, Je souhaiterai pouvoir reproduire l'effet de zoom avec mini image proposé à cette adresse: http://www.dakkadakka.com/core/gallery-viewimage.
Zoom image [ par etu54 ]
Bonjour, De par mes études je suis dans la programmation web depuis 1 an environ. Cependant le javascript m'est encore assez inconnu mis a part les
Diaporama image avec fondu enchainé, lien vers page, etdiapo suit scroll de page [ par nonosims ]
salut a tous, je viens vous solliciter pour vous expliquer mon problème. Débutant en script, j'essaye de mettre en place, un bandeau vertical à droite
ajouter fin sur diaporama [ par jpthali ]
Salut à tous, j'ai une petite question concernant l'excellent source [url=http://www.javascriptfr.com/codes/DIAPO-SIMPLE-TOUT-PRET_25617.aspx]de ce d
help!Diaporama ou mur d image [ par ameliecuisine ]
Bonjour, Voila je voudrais creer un diaporama d'image ou un mur d image avec pour chaque image une legende et un lien vers un site internet . Je voudr
pb sur l'utilisation d'un script zoom+loupe sur image [ par ScriWeb ]
Bonjour à tous, Je ne connais pas la javascript et j'ai tenté d'utilisé un script pour avoir un effet loupe sur une image : http://www.javascriptfr.c
diaporama javascript avec un lien pour chaque image [ par feldrik ]
Bonjour, je bute sur un problème depuis des jours, et espère trouver sur ce forum une âme charitable pour me tirer de ce mauvais pas. Je veux faire un
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Forum
UTILISER UN .JSUTILISER UN .JS par zaikoe
Cliquez pour lire la suite par zaikoe
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|