IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

[javascript] visionneuse


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 50
    Points : 26
    Points
    26
    Par défaut [javascript] visionneuse
    Bonjour!!
    j'aimerai réaliser une visionneuse
    Voici le code que j'utilise.
    La premiere image s'affiche mais pas les deux autres.
    Voyez vous mon erreur?
    Merci d'avance

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
     <html>
     <head>
    <script language="JavaScript">
    <!--
     
    var bauto = 0;
    var numero = 1;
    var dossier="C:\Documents and Settings\Mes documents\Mes images\photos_site\PICTURES\";
     
    function objet()
    {
    this.length = objet.arguments.length
    for (var i = 0; i < this.length; i++) this[i+1] = objet.arguments[i]
    }
     
    var nom = new objet ("imaga.jpg", "imagb.jpg", "imagc.jpg");
     
    function suivante() {
    numero += 1;
    if (numero == nom.length + 1) numero = 1;
    document.image.src = dossier+nom[numero];
    }
     
    function precedente() {
    numero -= 1;
    if (numero == 0) numero = nom.length;
    document.image.src = dossier+nom[numero];
    }
     
    function changer() {
    numero += 1;
    if (numero == nom.length + 1) numero = 1;
    document.image.src = dossier+nom[numero];
    roll=setTimeout("changer()", 1500);
    }
    function initial() {
    window.clearTimeout(roll);
    document.image.src = dossier+nom[numero];
    }
     
    function auto() {
    if (bauto == 0) {
    bauto =1; changer();
    document.vision.automat.value=" Lect/Stop ";
    }
    else {
    bauto =0; initial();
    document.vision.automat.value=" Lect/Auto ";
    }
    }
    //-->
    </script>
    </head>
     
    <body>
    <form name="vision">
    <div align="center">
    <input type="button" name="precedent" value="Précédente" onClick="precedente();">
    &nbsp;&nbsp;&nbsp;
    <input type="button" name="suivant" value=" Suivante " onClick="suivante();">
    &nbsp;&nbsp;&nbsp;
    <input type="button" name="automat" value=" Lect/Auto "onClick="auto();">
    </div>
    </form>
    <div align="center">&nbsp;<img src="C:\Documents and Settings\Mes documents\Mes images\photos_site\PICTURES\imaga.jpg" width="300" height="200" name="image"></div>
     </body>
    </html>

  2. #2
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Utilise firefox pour développer, tu verrais que tu a des erreurs dans ton js
    Utilise alert() pour debugger

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 50
    Points : 26
    Points
    26
    Par défaut
    je ne vois vraiment pas mon erreur si qq pouvait me dépanner ça serait sympa

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 50
    Points : 26
    Points
    26
    Par défaut
    il n'y a vraiment personne qui peut m'aider??

  5. #5
    Membre émérite
    Inscrit en
    Septembre 2002
    Messages
    2 307
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 307
    Points : 2 814
    Points
    2 814
    Par défaut
    essai de faire des lien en relatif
    utilise des / au lieu des \ pour les chemins. (sinon il faut les doubler \\)
    exemple
    var dossier="./";

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 50
    Points : 26
    Points
    26
    Par défaut
    ça ne fonctionne toujours pas

  7. #7
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 649
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 649
    Points : 11 138
    Points
    11 138
    Par défaut
    bonsoir,

    voilà déjà les message d'erreurs avec la console JS de FF :
    deprecated arguments usage ligne 12
    deprecated arguments usage ligne 14
    assignment to undeclared variable roll ligne : 38
    reference to undefined property nom[numero] lignes : 40,28,46,35,37
    -Visiblement FireFox n'aime pas la fonction objet.
    -Il faut écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.image.src = dossier+nom[numero];
    en 2 fois.

    voici le code avec quelques modifications :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
     
     <html>
     <head>
    <script language="JavaScript">
    <!--
     
    var roll;
     
     
    var bauto = 0;
    var numero = 1;
     
    //var dossier="C:\Documents and Settings\Mes documents\Mes images\photos_site\PICTURES\";
    var dossier="file:/C:/Documents and Settings/Mes documents/Mes images/photos_site/PICTURES/";
     
    /* ou encore avec un chemin relatif :
    var dossier="photos_site/PICTURES/";
    */
     
     
     
    /*function objet()
    {
    this.length = objet.arguments.length
    for (var i = 0; i < this.length; i++)
    		this[i+1] = objet.arguments[i]
    }
     
    var nom = new objet ("imaga.jpg", "imagb.jpg", "imagc.jpg");
    */
     
    var nom = new Array("imaga.jpg", "imagb.jpg", "imagc.jpg");
     
    function suivante() {
    numero += 1;
    if (numero == nom.length + 1)
    {	
    	numero = 1;
    }
     
    //document.image.src = dossier+nom[numero];
    var img=nom[numero];	
    document.image.src = dossier+img;
    }
     
    function precedente() {
    numero -= 1;
    if (numero == 0)
    {
    	 numero = nom.length;
    }
     
    //document.image.src = dossier+nom[numero];
    var img=nom[numero];
    document.image.src = dossier+img;
     
    }
     
    function changer() {
    numero += 1;
     
    if (numero == nom.length + 1)
    {
    	 numero = 1;
    }	
     
    //document.image.src = dossier+nom[numero];
    var img=nom[numero];	
    document.image.src = dossier+img;
     
    roll=setTimeout("changer()", 1500);
    }
     
    function initial() {
    window.clearTimeout(roll);
     
    //document.image.src = dossier+nom[numero];
    var img=nom[numero];
    document.image.src = dossier+img;
    }
     
    function auto() {
    if (bauto == 0) {
    	 bauto =1;
    	 changer();
    	 document.vision.automat.value=" Lect/Stop ";
    }
    else {
    		 bauto =0;
    		 initial();
    		 document.vision.automat.value=" Lect/Auto ";
    }
    }
    //-->
    </script>
    </head>
     
    <body>
    <form name="vision">
    <div align="center">
    <input type="button" name="precedent" value="Précédente" onClick="precedente();">
    &nbsp;&nbsp;&nbsp;
    <input type="button" name="suivant" value=" Suivante " onClick="suivante();">
    &nbsp;&nbsp;&nbsp;
    <input type="button" name="automat" value=" Lect/Auto "onClick="auto();">
    </div>
    </form>
     
    <div align="center">&nbsp;<img src="file:/C:/Documents and Settings/Mes documents/Mes images/photos_site/PICTURES/imaga.jpg" width="300" height="200" name="image"></div>
     </body>
    </html>
    ce code fonctionne avec IE5 et FireFox sans problème.
    -J'ai laissé en commentaire le code source original.
    -J'ai supprimé la fonction objet que j'ai remplacée par un tableau (array).
    -Tu devras modifier les tests des fonctions suivante() , precedente() et changer(). Modifie également l'initialisation de numero.
    -Le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.image.src = dossier+nom[numero];
    devient
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var img=nom[numero];
    document.image.src = dossier+img;
    (affectation en 2 fois)
    -J'ai déclaré la variable roll.
    -J'ai modifié la syntaxe de src de la balise img.

  8. #8
    Nouveau Candidat au Club
    Inscrit en
    Octobre 2005
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 1
    Points : 1
    Points
    1
    Par défaut moi aussi
    Bonjour Sole

    Personnellement j'utilise le même script et j'ai eu le même problème au début. en fait, dans le body, je ne mets pas seuelemnt le lien de la 1ere image imaga, je rentre aussi imagb, imagc etc...

    J'ai fait le test avec une dizaine d'images et ça marche vraiment bien, c'est très joli.


    le problème que j'ai maintenant, c'est que je voudrais faire ma visioneuse avec 100 images mais je ne sais pas comment éviter de taper tous les liens à la main.

    Bon courage,

    Marie

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 50
    Points : 26
    Points
    26
    Par défaut
    salut!
    tu mets les autres liens comment?? parceque si je mets les 3 liens les 3 images s'affichent mais à la suite ce qui est logique.

    Merci

Discussions similaires

  1. Réponses: 4
    Dernier message: 12/10/2014, 23h32
  2. Visionneuse d'images html, javascript, dreamweaver
    Par pxline dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 27/04/2013, 23h55
  3. JavaScript<---->ActionScript
    Par crazypiou dans le forum Flash
    Réponses: 21
    Dernier message: 17/04/2009, 17h14
  4. Prob visionneuse photo javascript
    Par tsyfar dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 10/08/2005, 11h35
  5. [VB6] Comment accéder a la visionneuse d'API ??
    Par Argonz dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 13/11/2002, 12h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo