Javascript & CSS

AntiZeus
Invité n'ayant pas de compte PHPfrance

25 avr. 2005, 15:03

Bonjour à tous !!

Je doit réaliser un intranet pour une société (c'est mon job, quoi !!! ^^) et ils veulent qu'il soit le plus sécurisé possible contre les pseudo-informaticiens qui voient 2 url et qui pensent connaître l'architecture du site !!!

Ce que je voudrait faire, c'est camoufler le contenu de la barre d'état !!! Je connais le code Javascript (window.DefaultStatus et window.status) mais comme mon site est composé d'énormément de liens, je me demandais si il est possible de lier une CSS et une fonction JS ?

Je m'explique : au chargement de ma page, j'appelle le bout de code suivant :

Code : Tout sélectionner

<script language="JavaScript"> window.defaultStatus = "Bienvenue sur l'Intranet de maSociete"; </script>
Qui met le texte "Bienvenue sur l'Intranet de maSociete" dans la barre d'état.
Mais pour faciliter le codage, je voudrais créer une classe CSS qui reviendrait à marquer le code suivant dans chaque lien :

Code : Tout sélectionner

<a class="button" id="buttonCancel" href="index2.php?url=Client/gest_client.php" [color=red][b]onmouseover="window.status='Ajouter un nouveau client';return true" onmouseout="window.status='Bienvenue sur l'Intranet de maSociete'; return true"[/b][/color]>Ajouter</a>
Si quelqu'un à une idée, je suis preneur !!!

Merci d'avance !!![/code]

AntiZeus
Invité n'ayant pas de compte PHPfrance

25 avr. 2005, 15:05

Je voulais formater le code et je viens de voir que c'est pas possible.

Je vous donne le bout de code seul que je veut inserer via une CSS

Code : Tout sélectionner

onmouseover="window.status='Ajouter un nouveau client';return true" onmouseout="window.status='Bienvenue sur l'Intranet de maSociete'; return true"
Ca m'apprendra à rprévisualiser avant de poster !!!

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

25 avr. 2005, 16:12

Conclusion : tu as répondu toi-même à ta recherche ? ;)

AntiZeus
Invité n'ayant pas de compte PHPfrance

25 avr. 2005, 16:17

Je voulais dire que je voualis formater le code dans le forum et que ça avait pas marché !!!

Je de faire ce que je veut avec la balise "content" et l'attribut "attr()" mais je ne vois pas trop comment on s'en sert et comment est-ce qu'on l'utilise !!!

De plus, je n'arrive pas à trouver de bon tuto sur cet attribut !!!

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

25 avr. 2005, 16:22

Je voulais dire que je voualis formater le code dans le forum et que ça avait pas marché !!!
La fonction "Éditer" n'est pas disponible pour les invités.
Il faut être inscrit. (N'hésite pas, c'est gratuit !) :lol:

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

25 avr. 2005, 16:24

La gestion du contenu de la barre d'état du navigateur est de la compétence du Javascript.

Le CSS n'intervient pas en dehors du corps de la fenêtre d'affichage du navigateur
(c'est-à-dire tout ce qui est entre <body> et </body>)

AntiZeus
Invité n'ayant pas de compte PHPfrance

25 avr. 2005, 16:54

Tout d'abord en ce qui concerne l'inscription, elle est faite depuis vendredi mais je n'ai toutjours pas recu le mail de confirmation et personne ne répons à mon mail que j'ai envoyé depuis la section "contact"

En ce qui concerne la barre d'état, j'ai déjà écrit ma fonction JS (comme décriteplus haut) mais je cherchais un moyen d'insérer automatiquement l'appel à cette fonction dans les liens à l'aide des CSS.

J'ai essayé la méthode suivante

Code : Tout sélectionner

a { content:"onmouseover="javascript: affiche()" on mouseout="javascript: efface()"; }
Mais je me suis rendu compte que l'attribut content ne permettait que d'insérer à l'EXTERIEUR des balises HTML car il ne fonctionnait que avec :after et :before !!!

et si je remplace

Code : Tout sélectionner

content:"onmouseover="javascript: affiche()" on mouseout="javascript: efface()";
par

Code : Tout sélectionner

content:attr("onmouseover="javascript: affiche()" on mouseout="javascript: efface()")
Ca ne marche pas non plus parce que attr ne sert qu'a récupérer le contenu des attributs et non pas à en ajouter !!!

J'ai donc abandonné et j'ai modifié tt mes liens !!! Dommage !!!

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

25 avr. 2005, 17:10

Je n'avais pas compris ton idée, j'avoue.
Elle est astucieuse. Dommage qu'elle ne fonctionne pas.
Pour ma part, j'ai défini un à un les onmouseover et onmouseout de mes liens.

Une possible solution : créer une fontion php que tu appelles dans chaque lien.
Ce ne sera pas aussi automatique qu'avec du CSS mais ça allègera tout de même l'écriture. ;)

AntiZeus
Invité n'ayant pas de compte PHPfrance

25 avr. 2005, 17:20

C'est une idée, mais je pense que ça reviendrait au même vu qu'il faudrait que j'écrice un truc comme ça :
<?php
    insertLien($mapage, $mesattributs);
?>
au lieu de

Code : Tout sélectionner

<a href="mapage.php" onmouseover="javascript: affiche()" on mouseout="javascript: efface()>
Tant qu'a mettre du code, je préfère laisser en HTML, c'est plsu clair plutôt que de faire des allers-retours entre HTML et PHP !!!

Mais merci de ta proposition !!!

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

25 avr. 2005, 17:52

Une idée à suggérer au W3C pour le futur CSS 3... ;)

AntiZeus
Invité n'ayant pas de compte PHPfrance

25 avr. 2005, 18:35

Je propose de créer le W3C bis et de proposer nos propres extensions, améliorations, normes !!!! lol :lol:

Trèves de plaisanteries !!!

PS : Pour mon inscriptions, je viens de renvoyer un mail en esperant bientôt pouvoir faire partie de la grande famille de PHPfrance !!! 8)