MENU CONTEXTUEL STYLE VISUAL STUDIO 2003

LUDINSKI Messages postés 441 Date d'inscription mardi 2 décembre 2003 Statut Membre Dernière intervention 22 mai 2012 - 11 août 2004 à 18:08
cs_frop01 Messages postés 1352 Date d'inscription lundi 27 octobre 2003 Statut Membre Dernière intervention 19 novembre 2008 - 15 sept. 2004 à 10:55
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/25330-menu-contextuel-style-visual-studio-2003

cs_frop01 Messages postés 1352 Date d'inscription lundi 27 octobre 2003 Statut Membre Dernière intervention 19 novembre 2008 2
15 sept. 2004 à 10:55
Merci flo
flo_le_dino Messages postés 22 Date d'inscription mardi 9 mars 2004 Statut Membre Dernière intervention 20 août 2005
15 sept. 2004 à 10:27
j'ai pas tres bien compris le dernier post ...
Tu souhaite faire un style transparent sur tout le menu ?,

Si c'est ca oui c'est possible en ajoutant un filter dans le style des cases du tableau. je vais essayer de voir ca des que possible !
cs_frop01 Messages postés 1352 Date d'inscription lundi 27 octobre 2003 Statut Membre Dernière intervention 19 novembre 2008 2
11 sept. 2004 à 16:35
Bravo pour ce code!

Est-il possible de changer le menu en style transparent comme le style shadow avec cette ligne ?

FILTER: progid:DXImageTransform.Microsoft.Shadow(direction=135,color=#cbc8e7,strength=5);

Merci.
flo_le_dino Messages postés 22 Date d'inscription mardi 9 mars 2004 Statut Membre Dernière intervention 20 août 2005
18 août 2004 à 14:10
ok, c cool, je l'ai modifié et remis a disposition...
merci.
LUDINSKI Messages postés 441 Date d'inscription mardi 2 décembre 2003 Statut Membre Dernière intervention 22 mai 2012 8
18 août 2004 à 10:07
Désolé, je n'avait pas vus que cela décalait l'item inactive. Il faut donc faire de même pour la classe de style "cellimginactive" :
.cellimginactive
{
padding-right: 0px;
padding-left: 1px;
padding-top: 0px;
padding-bottom: 0px;
}
LUDINSKI Messages postés 441 Date d'inscription mardi 2 décembre 2003 Statut Membre Dernière intervention 22 mai 2012 8
18 août 2004 à 09:55
Si ça t'interresse, j'ai supprimer le décalage d'un pixel vers la droite, qui se produisait lorsqu'un élément avait le focus !!

Il suffit de modifier le style CSS de la classe CellImg :
.cellimg
{
padding-left: 1px;
}

C'est tout !!
flo_le_dino Messages postés 22 Date d'inscription mardi 9 mars 2004 Statut Membre Dernière intervention 20 août 2005
18 août 2004 à 09:27
OK, ca fonctionne sans ID,
donc maintenant, le code est encore simplifié puisque les tableaux et les cellules n'ont plus d'ID !
maintenant un simple copié/collé des tableaux pour ajouter une ligne est suffisant.

Par contre, y'a toujours cette ligne "children[0].children[0].children[0].className" qui n'est pas belle mais maintenant ca va etre difficile de l'enlever...puisque getElementByID() ne peut pas etre utilisé...

Si quelqu'un voit tjs des problemes, n'hesitez pas!
flo_le_dino Messages postés 22 Date d'inscription mardi 9 mars 2004 Statut Membre Dernière intervention 20 août 2005
18 août 2004 à 09:19
oui, j'avais pensé a cette solution. Le probleme est que je voulais trouvé une solution assez générique, qui permette de faire un simple copié-collé pour ajouter une ligne au menu sans avoir a modifier le nom des cellules composant le tableau...

sinon petite question : peut-on accéder a un element qui n'as pas de nom, c'est à dire dont le champs "id" n'est pas renseigné. parce qu'a premiere vue, je pourrai tres bien utiliser les tableaux et les cellules sans leurs donner de nom (id) puisque j'y accede par leur instances.??
flo_le_dino Messages postés 22 Date d'inscription mardi 9 mars 2004 Statut Membre Dernière intervention 20 août 2005
18 août 2004 à 09:18
oui, j'avais pensé a cette solution. Le probleme est que je voulais trouvé une solution assez générique, qui permette de faire un simple copié-collé pour ajouter une ligne au menu sans avoir a modifier le nom des cellules composant le tableau...

sinon petite question : peut-on accéder a un element qui n'as pas de nom, c'est à dire dont le champs "id" n'est pas renseigné. parce qu'a premiere vue, je pourrai tres bien utiliser les tableaux et les cellules sans leurs donner de nom (id) puisque j'y accede par leur instances.??
rherve Messages postés 1 Date d'inscription jeudi 13 novembre 2003 Statut Membre Dernière intervention 16 août 2004
16 août 2004 à 14:47
Tu peux utiliser getElementById('MonId'), mais pour cela chacun de tes éléments doit avoir un Id propre.

Dans ton code, tu transformes comme suit :
<td id="cell1" class="cellimg" align="middle" valign="center"></td>
<td id="cell1" class="cellimg" align="middle" valign="center"></td>
etc..
par
<td id="tab1cell1" class="cellimg" align="middle" valign="center"></td>
<td id="tab2cell1" class="cellimg" align="middle" valign="center"></td>

et dans highlightie5, ça devient :
document.getElementById(obj.id+"cell1").style.backgroundColor = "#B6BDD2";
etc...

C'est une autre solution. Est-elle meilleure? Je ne sais pas...
flo_le_dino Messages postés 22 Date d'inscription mardi 9 mars 2004 Statut Membre Dernière intervention 20 août 2005
12 août 2004 à 11:41
je l'ai pas encore testé sous mozilla..j'essaie ca cet aprem !Mais ce n'est pas étonnant que ca marche pas car certaines methodes sont spécifiques à IE. En fait, je me suis inspiré d'un code disponible sur un autre site et qui ne devait marcher qu'avec IE5(d'ou le nom des fcts!)

donc voila, pour le bug de la taille des items, le probleme est résolu maintenant !
LUDINSKI Messages postés 441 Date d'inscription mardi 2 décembre 2003 Statut Membre Dernière intervention 22 mai 2012 8
11 août 2004 à 18:08
Pas mal, mais .....

Je l'ai testé sous Mozilla, et ça marche pas !!
( si ça te dit de le rendre compatible, j'ai aussi mis un menu contextuel sur Javascriptfr, tu pourrais t'en inspirer !! )

Sous IE 6, la taille des items est plus grande lorsqu'il a le focus (ça fait biz !!)

Sinon bravo et bonne continuation. Ciao
Rejoignez-nous