Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

chargement image complet

4 réponses
Avatar
Josselin
salut

j'utilise js pour gérer une présentation de slides. (un script open
source qui marche bien)
pendant l'affichage d'un slide, le télechargement du suivant s'effectue.
pour l'instant j'affiche le bouton 'suivant' après un timeout de
quelques secondes (au pif) pour permettre le chargement.., mais
j'aimearis le faire dès que le slide suivant est chargé...
il y a-t-il une façon d'écrire ça ? en testant image[i].complete ou
qqchose du genre ?

merci

pour ceux que ça intéresse je transmettrais le script ...

joss

4 réponses

Avatar
ASM
salut

j'utilise js pour gérer une présentation de slides. (un script open
source qui marche bien)
pendant l'affichage d'un slide, le télechargement du suivant s'effectue.
pour l'instant j'affiche le bouton 'suivant' après un timeout de
quelques secondes (au pif) pour permettre le chargement.., mais
j'aimearis le faire dès que le slide suivant est chargé...


ça ira alors peut-être trop vite si les images ne sont pas si lourdes et
si on a un bon ADSL.

il y a-t-il une façon d'écrire ça ? en testant image[i].complete ou
qqchose du genre ?


var OK = false;
var next = false;

Imag = new Image()
Imag.onload = changeimage;
Imag.src = '/photos/vue_009.jpg';

function changeimage() {
OK = true;
}

function newImage() {
if(OK && next) document.images.viewer.src = Image.src;
else
setTimeout('newImage()',200);
}


<img name="viewer" src="vue_000.jpg" onclick="next=true; newImage();" >



Sinon pour le slider comme tu le veux :

var I = new Array( 'truc', 'machin', 'chose', 'bidule');
var i= 0;

function slide() {
Imag = new Image();
Imag.onload = function() {
document.images.viewer.src = Imag.src;
slide();
};
Imag.src = '/photos/'+I[i}+'.jpg';
i++:
}
onload = slide;

<img name="viewer" src="vue_000.jpg">



--
Stephane Moriaux et son [moins] vieux Mac

Avatar
Josselin
On 2006-05-26 22:59:32 +0200, ASM
said:

salut

j'utilise js pour gérer une présentation de slides. (un script open
source qui marche bien)
pendant l'affichage d'un slide, le télechargement du suivant s'effectue.
pour l'instant j'affiche le bouton 'suivant' après un timeout de
quelques secondes (au pif) pour permettre le chargement.., mais
j'aimearis le faire dès que le slide suivant est chargé...


ça ira alors peut-être trop vite si les images ne sont pas si lourdes
et si on a un bon ADSL.

il y a-t-il une façon d'écrire ça ? en testant image[i].complete ou
qqchose du genre ?


var OK = false;
var next = false;

Imag = new Image()
Imag.onload = changeimage;
Imag.src = '/photos/vue_009.jpg';

function changeimage() {
OK = true;
}

function newImage() {
if(OK && next) document.images.viewer.src = Image.src;
else
setTimeout('newImage()',200);
}


<img name="viewer" src="vue_000.jpg" onclick="next=true; newImage();" >



Sinon pour le slider comme tu le veux :

var I = new Array( 'truc', 'machin', 'chose', 'bidule');
var i= 0;

function slide() {
Imag = new Image();
Imag.onload = function() {
document.images.viewer.src = Imag.src;
slide();
};
Imag.src = '/photos/'+I[i}+'.jpg';
i++:
}
onload = slide;

<img name="viewer" src="vue_000.jpg">


Merci pour tes precieuses infos ! j'ai également trouvé un article
technique extrêmement intéressant sur les problèmes posés par le modèle
d'exécution single-thread de JS et les opérations asynchones du type
chargement d'images lourdes...
pour ceux qui lisent la langue de shake'spire cf
http://www.devx.com/webdev/Article/20947


Avatar
Bertrand B

Merci pour tes precieuses infos ! j'ai également trouvé un article
technique extrêmement intéressant sur les problèmes posés par l e modèle
d'exécution single-thread de JS et les opérations asynchones du typ e
chargement d'images lourdes...
pour ceux qui lisent la langue de shake'spire cf
http://www.devx.com/webdev/Article/20947

Merci pour le lien .. et le plus surprenant c'est que dans la

description de javascript2 je n'ai pas vu d'outils de protection de
section critique.

Avatar
Le Fou
ASM a écrit
(...)
Imag = new Image()
Imag.onload = changeimage;
(...)


Quelle est la différence fondamentale, en ce qui concerne l'objet "Image",
entre l'évènement "onLoad" et la propriété "complete" ?
J'ai du mal à saisir, même en lisant la doc.
Il y a quelques années j'utilisais "complete" pour savoir si une image était
totalement chargée, alors que, dans mes souvenirs, ça ne fonctionnait pas
avec "onLoad" :
http://ehiller.club.fr/barreprog/index.htm

--
A'tchao

Le Fou
http://gloupclub.free.fr/
http://www.ffessm-cd84.com/
http://ehiller.club.fr/