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 :

affichage d'un calque avec javascript ne marche pas


Sujet :

JavaScript

  1. #1
    Membre régulier Avatar de zabdaniel
    Profil pro
    Inscrit en
    Février 2007
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 175
    Points : 86
    Points
    86
    Par défaut affichage d'un calque avec javascript ne marche pas
    Bonjour
    J'ai fait ceci dans un document à part :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <div id="apDiv1" >
    <input type="button" value="Clique ici !" onclick="document.getElementById('apDiv2').style.display = 'block';" />
    <div id="apDiv2" style="display:none;">Contenu du div</div>
     
    </div>
    Et pas de problème ça marche quand j'appuie sur cliquez ici le calque apdiv2 apparait bien.

    Alors maintenant j'ai un caroussel et quand l'image arrive au "milieu" je veux qu'un calque différent s'affiche à chque fois. Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    var isInternetExplorer = navigator.appName.indexOf("Microsoft") != -1;
    // Gérer tous les messages FSCommand d'une animation Flash.
    function carrousel_DoFSCommand(command, args) {
    	var carrouselObj = isInternetExplorer ? document.all.carrousel : document.carrousel;
    	//
    		if (command =="messagebox") document.getElementById('args').style.display = 'block';//alert(args);
    	//
    }
    le args correspondant au nom du calque devant s'afficher, qui est défini dans un fichier xml à part. Quand je met un alert(args) il n'y a aucun problème les pop un quivent avec le nom du calque correspondant mais je n'arrive pas à afficher le calque quand l'image arrive au centre de la page et je ne vois pas pourquoi pourriez vous m'aider merci !

  2. #2
    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
    document.getElementById(args)
    ?

  3. #3
    Membre régulier Avatar de zabdaniel
    Profil pro
    Inscrit en
    Février 2007
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 175
    Points : 86
    Points
    86
    Par défaut
    Citation Envoyé par Matthieu2000 Voir le message
    ?
    Merci
    Avec ou sans les ' celà ne change rien désolée un petit truc quand même c'est un élément div que je veux afficher et pas un calque

    edit :
    J'ai fait un test j'avais créé un div avec pour nom apDiv2, et j'ai remplacé args par apDiv2, et j'ai mis dans le style du calque display:none; mais pareil l'élément div ne s'affiche pas

  4. #4
    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
    un div est un calque!
    document.getElementById
    renvoie un element dont l'id correspond.

    La question que je pose : est ce que tu veux récuper l'élément 'args' ou l'élément dont l'id est passé en paramètre (args)

  5. #5
    Membre régulier Avatar de zabdaniel
    Profil pro
    Inscrit en
    Février 2007
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 175
    Points : 86
    Points
    86
    Par défaut
    Ok merci désolée j'ai déjà eu des remarques parce que je ne disais pas élément div mais calque alors je précise
    Je veux récupérer le calque dont le nom correspond à args (args étant défini dans un fichier xml) donc je veux récupérer l'élément dont l'id est passé en paramètre (args)

  6. #6
    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
    document.getElementById(args)
    devrait marché !

    PS : vérifie que l'élément possède un attribut style, sinon crée un vide.
    PS2: mets l'erreur aussi, cela peut nous aider.

  7. #7
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 418
    Points
    91 418
    Billets dans le blog
    20
    Par défaut
    je veux récupérer l'élément dont l'id est passé en paramètre (args)
    Dans ce cas, c'est bien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById(args)
    Mais es-tu sure que ton argument passé en paramètre correspond bien à l'élément xml ?
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  8. #8
    Membre régulier Avatar de zabdaniel
    Profil pro
    Inscrit en
    Février 2007
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 175
    Points : 86
    Points
    86
    Par défaut
    Citation Envoyé par Bovino Voir le message
    Dans ce cas, c'est bien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById(args)
    Mais es-tu sure que ton argument passé en paramètre correspond bien à l'élément xml ?
    C'est pour cela que j'avais créé tout d'abord un alert, et l'alert me renvoie bien en pop up le nom du calque voulu...

  9. #9
    Membre régulier Avatar de zabdaniel
    Profil pro
    Inscrit en
    Février 2007
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 175
    Points : 86
    Points
    86
    Par défaut
    Citation Envoyé par Matthieu2000 Voir le message
    devrait marché !

    PS : vérifie que l'élément possède un attribut style, sinon crée un vide.
    PS2: mets l'erreur aussi, cela peut nous aider.
    L'élément possède bien un attribut style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    #apDiv8 {
    	position:absolute;
    	left:156px;
    	top:510px;
    	width:835px;
    	height:153px;
    	z-index:8;
    	display:none;
    }
    et il n'y a pas de code d'erreur simplement rien ne s'affiche.

  10. #10
    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
    Non! il a une class mais pas de "style".

    as tu
    <div id="apDiv8" style="">
    alert("["+args+"]");
    pour voir s'il n'y a pas de valeurs invisible.

  11. #11
    Membre régulier Avatar de zabdaniel
    Profil pro
    Inscrit en
    Février 2007
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 175
    Points : 86
    Points
    86
    Par défaut
    Citation Envoyé par Matthieu2000 Voir le message
    Non! il a une class mais pas de "style".

    as tu

    pour voir s'il n'y a pas de valeurs invisible.
    Oui en effet excuse moi alors voici ce que j'ai pour le div :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <div id="apDiv8" style="display:none">
    essai caroussel affichage d'un calque
     
    </div>
    Et j'ai supprimé display:none dans la class parce qu'en fait je l'avais en double.
    J'essaie le alert("["+args+"]"); merci

  12. #12
    Membre régulier Avatar de zabdaniel
    Profil pro
    Inscrit en
    Février 2007
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 175
    Points : 86
    Points
    86
    Par défaut
    J'ai mis le alert("["+args+"]"); et j'ai un alert avec comme message [id_du_div]

  13. #13
    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
    A quel moment la fonction est appelé? avant ou après la création du calque?

  14. #14
    Membre régulier Avatar de zabdaniel
    Profil pro
    Inscrit en
    Février 2007
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 175
    Points : 86
    Points
    86
    Par défaut
    Alors voici l'ordre :
    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
     
    <head>
    <style type="text/css">
    <!--
    #apDiv6 {
    	position:absolute;
    	left:158px;
    	top:115px;
    	width:785px;
    	height:374px;
    	z-index:6;
    }
     
    #apDiv8 {
    	position:absolute;
    	left:156px;
    	top:510px;
    	width:835px;
    	height:153px;
    	z-index:8;
    }
    -->
    </style>
    <script language="JavaScript">
     
    var isInternetExplorer = navigator.appName.indexOf("Microsoft") != -1;
    // Gérer tous les messages FSCommand d'une animation Flash.
    function carrousel_DoFSCommand(command, args) {
    	var carrouselObj = isInternetExplorer ? document.all.carrousel : document.carrousel;
    	//
    		if (command =="messagebox") alert("["+args+"]"); 
    	//
    }
    // Hook pour Internet Explorer
    if (navigator.appName && navigator.appName.indexOf("Microsoft") != -1 && navigator.userAgent.indexOf("Windows") != -1 && navigator.userAgent.indexOf("Windows 3.1") == -1) {
    	document.write('<script language=\"VBScript\"\>\n');
    	document.write('On Error Resume Next\n');
    	document.write('Sub carrousel_FSCommand(ByVal command, ByVal args)\n');
    	document.write('	Call carrousel_DoFSCommand(command, args)\n');
    	document.write('End Sub\n');
    	document.write('</script\>\n');
    }
    //-->
    </script>
    </head>
    <body>
    <div id="apDiv6">
    <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" id="carrousel" width="842" height="372" align="middle">
    <param name="allowScriptAccess" value="always" />
    <param name="movie" value="carrousel.swf" /><param name="quality" value="high" /><param name="bgcolor" value="#ffffff" /><embed src="carrousel.swf" quality="high" bgcolor="#ffffff" width="842" height="372" swLiveConnect=true id="carrousel" name="carrousel" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
    </object>
    </div>
     
     
     
    <div id="apDiv8" style="display:none">
    essai caroussel affichage d'un calque
     
    </div>
    </body>

  15. #15
    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
    essaie de mettre le code en bas de la page! avant juste avant la fermeture du tag body! et découpe le mot en plusieurs morceaux!

  16. #16
    Membre régulier Avatar de zabdaniel
    Profil pro
    Inscrit en
    Février 2007
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 175
    Points : 86
    Points
    86
    Par défaut
    Merci beaucoup de suivre le sujet mais tu parles de quel code stp ?
    La partie javascript ?

  17. #17
    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
    Citation Envoyé par zabdaniel Voir le message
    Alors voici l'ordre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
    if (navigator.appName && navigator.appName.indexOf("Microsoft") != -1 && navigator.userAgent.indexOf("Windows") != -1 && navigator.userAgent.indexOf("Windows 3.1") == -1) {
    	document.write('<sc'+'ript language=\"VBScript\"\>\n');
    	document.write('On Error Resume Next\n');
    	document.write('Sub carrousel_FSCommand(ByVal command, ByVal args)\n');
    	document.write('	Call carrousel_DoFSCommand(command, args)\n');
    	document.write('End Sub\n');
    	document.write('</sc'+'ript\>\n');
    }
    Ca m'étonne que ce code marche...

  18. #18
    Membre régulier Avatar de zabdaniel
    Profil pro
    Inscrit en
    Février 2007
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 175
    Points : 86
    Points
    86
    Par défaut
    Citation Envoyé par Matthieu2000 Voir le message
    Ca m'étonne que ce code marche...
    Ben si il marche enfin il me semble c'est à dire qu'avec le message d'alert un alert s'affiche qu'on le place en début de code ou à la fin...

  19. #19
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    319
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 319
    Points : 351
    Points
    351
    Par défaut
    C'est normal que tu échappes les caractères ">" ?

    Par curiosité, pourquoi as-tu besoin de VBScript ? Je ne m'en suis jms servi et l'usage de "document.write" me donne des frissons... ^^'

  20. #20
    Membre régulier Avatar de zabdaniel
    Profil pro
    Inscrit en
    Février 2007
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 175
    Points : 86
    Points
    86
    Par défaut
    Citation Envoyé par TigRoO° Voir le message
    C'est normal que tu échappes les caractères ">" ?

    Par curiosité, pourquoi as-tu besoin de VBScript ? Je ne m'en suis jms servi et l'usage de "document.write" me donne des frissons... ^^'
    Merci désolée je ne comprend pas ce que tu veux dire par "échapper" les caractères ">" ?
    Sinon le vbscript sert a appeler carrousel_DoFSCommand.

    EDIT :
    Bon ben en fait j'ai repris sur une autre page et ça marche merci beaucoup à tous !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 18/05/2009, 18h57
  2. Code javascript ne marche pas avec Mozilla Firefox
    Par Contact2012 dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 10/10/2008, 11h06
  3. Carte graphique fx5200 avec redhat9 ne marche pas
    Par nouri.moudhffar dans le forum Administration système
    Réponses: 2
    Dernier message: 24/06/2006, 15h31
  4. [CSS] Bug IE avec height ne marche pas avec les %
    Par El Riiico dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 23/06/2005, 17h11
  5. Réponses: 4
    Dernier message: 30/12/2004, 18h04

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