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 :

setattribut qui ne marche pas sur IE7


Sujet :

JavaScript

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    321
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Février 2006
    Messages : 321
    Points : 142
    Points
    142
    Par défaut setattribut qui ne marche pas sur IE7
    Bonjour, voici ma fonction javascript :
    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
    function affiche_ligne(id_cv)
    {
    	document.getElementById('cv_'+id_cv).className="ligne-over";
    	document.getElementById('cv_'+id_cv).setAttribute("onmouseover","");
    	document.getElementById('cv_'+id_cv).setAttribute("onmouseout","");
    	var spans = document.getElementsByTagName('tr');    
    	for (i=0; i<spans.length; i++)
    	{
    		if ((spans[i].id).substr(0,3) == "cv_" && (spans[i].id!=('cv_'+id_cv)))
    		{
    			document.getElementById(spans[i].id).className="ligne";
    			document.getElementById(spans[i].id).setAttribute("onmouseover","this.className='ligne-over'");
    			document.getElementById(spans[i].id).setAttribute("onmouseout","this.className='ligne'");
    		}
    	}
    }
    voici le bout de mon code html qui nous intéresse ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <tr id="cv_<?php echo $tab[id_cv];?>" onmouseover="this.className='ligne-over'" onmouseout="this.className='ligne'">
    ....
    <td class="lienfiche"><img src="<?php echo $che;?>e-entreprise/images/liste-cv/picto_fiche.png" width="11" height="13" border="0" align="absmiddle" />&nbsp;&nbsp;<a href="<?php echo $che;?>include/popup_image.php?id=<?php echo $tab[id_cv];?>&i_part=<?php echo strtoupper(substr($tab_partenaire[nom],0,2));?>" target="popframe" onClick="javascript:affiche_ligne(<?php echo $tab[id_cv];?>);showpopup();montrecalque();">Voir le CV</a></td>
    J'explique:
    j'ai une liste de CV crée automatiquement , comme vous pouvez voir sur le tr, il y a un survol de la ligne (on change la classe grâce au onmouseover et onmouseout, lorsque l'on clique sur "voir le cv", on ouvre une popup et je met un onclick qui permet de laisser en surligné la ligne du cv donc si je clique sur un autre cv , c'est l'autre cv qui est surligné mais le problème c'est que je dois garder le survol et que sur IE un fois que j'ai cliqué sur un cv, je n'est plus le survol du tout alors que sur firefox, ça marche nikel.

    Voyez vous une raison, si besoin de plus d'infos, je suis à votre écoute.
    voici le lien: http://213.198.89.234/www.lille-appr...nsulter-cv.php
    c'est lorsque vous affichez la liste des cvs.

    d'avance merci

  2. #2
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 868
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 868
    Points : 16 258
    Points
    16 258
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById(spans[i].id).onmouseover = function(){ this.className='ligne-over'; };

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    321
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Février 2006
    Messages : 321
    Points : 142
    Points
    142
    Par défaut
    parfait merci mais as tu une explication pour le code que j'avais mis pourquoi ça marchait pas sur IE?

  4. #4
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 868
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 868
    Points : 16 258
    Points
    16 258
    Par défaut
    Simplement par que la fonction setAttribute est (très) mal interprétée par IE (toutes versions).

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

Discussions similaires

  1. Réponses: 14
    Dernier message: 27/08/2006, 19h47
  2. DATEDIFF() qui ne marche pas sur une version 5.0.xx
    Par vallica dans le forum Requêtes
    Réponses: 4
    Dernier message: 10/05/2006, 17h44
  3. Code qui ne marche plus sur IE7 Beta
    Par Death83 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 18/03/2006, 00h15
  4. Réponses: 3
    Dernier message: 08/09/2003, 15h06
  5. Réponses: 9
    Dernier message: 07/05/2003, 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