Problème de javascript


Piafou
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 15
Inscription: 20 Nov 2005

Problème de javascript

Message le Dim Nov 20, 2005 15:37

Bonjour à tous!

Voilà, j'ai intégré dans la page web de mon site perso un code javascript pour personnaliser son menu(non pas canidopt, qui est le site de ma copine) mais effectivement le site que je me suis fait pour moi et beaucoup d'utilisateurs (je l'espère) c'est à dire piaf-stuces.
Ce code se décline en deux parties, une dans le head, et l'autre dans le corps.

Voici ce que j'obtiens, j'ajoute que c'est un script récupéré sur editeurjavascript.

Code: Tout sélectionner
<!-- DEBUT DU SCRIPT -->
<style type="text/css">
.ejs_context_menuitems{padding-left:12px; padding-right:7px; }
</style>
<script language="JavaScript1.2">
/*
SCRIPT EDITE SUR L'EDITEUR JAVASCRIPT
http://www.editeurjavascript.com
*/
ejs_context_elemt = new Array;
ejs_context_elemt[0] = "Page précédente|history.go(-1)";
ejs_context_elemt[1] = "Page suivante|history.go(1)";
ejs_context_elemt[2] = "";
ejs_context_elemt[3] = 'Page d\'accueil|top.document.location.href=\'http://www.piaf-stuces.info\'';
ejs_context_elemt[4] = '';
ejs_context_elemt[5] = 'Recherche Google|document.location.href=\'http://www.google.fr\'';
ejs_context_elemt[6] = 'Recherche Yahoo|document.location.href=\'http://www.yahoo.fr\'';
ejs_context_elemt[7] = 'Téléchargements légaux.|document.location.href=\'http://www.telecharger.com\'';
ejs_context_elemt[8] = '';
ejs_context_elemt[9] = 'Me contacter|document.location.href=\'mailto:piafou@gmail.com\'';
function ejs_context_position(e)
   {
   ejs_context_x = (navigator.appName.substring(0,3) == "Net") ? e.pageX : event.x+document.body.scrollLeft;
   ejs_context_y = (navigator.appName.substring(0,3) == "Net") ? e.pageY : event.y+document.body.scrollTop;
   }

function ejs_context_open()
   {
   document.getElementById("ejs_context_box").style.top = ejs_context_y;
   document.getElementById("ejs_context_box").style.left = ejs_context_x;
   document.getElementById("ejs_context_ombre").style.top = ejs_context_y+2;
   document.getElementById("ejs_context_ombre").style.left = ejs_context_x+2;
   document.getElementById("ejs_context_box").style.visibility = "visible";
   document.getElementById("ejs_context_ombre").style.visibility = "visible";
   return(false);
   }

function ejs_context_close()
   {
   if (document.getElementById)
      {
      document.getElementById("ejs_context_box").style.top = 0;
      document.getElementById("ejs_context_box").style.left = 0;
      document.getElementById("ejs_context_ombre").style.top = 0;
      document.getElementById("ejs_context_ombre").style.left = 0;
      document.getElementById("ejs_context_box").style.visibility = "hidden";
      document.getElementById("ejs_context_ombre").style.visibility = "hidden";
      }
   }

function ejs_context_hl(mode, element)
   {
   if(mode == 1)
      {
      element.style.background = '#316AC5';
      element.style.color = '#ffffff';
      }
   else
      {
      element.style.background ='#ffffff';
      element.style.color = '#000000';
      }
   }

if(navigator.appName.substring(0,3) == "Net")
   document.captureEvents(Event.MOUSEMOVE);
</script>
<!-- FIN DU SCRIPT -->


et dans le corps :

Code: Tout sélectionner
<script language="JavaScript">
/*
SCRIPT EDITE SUR L'EDITEUR JAVASCRIPT
http://www.editeurjavascript.com
*/
ejs_context_ombre_txt = '';
for(a=0;a<ejs_context_elemt.length;a++)
   {
   if(ejs_context_elemt[a].indexOf("|") > 0)
      {
      splited = new Array;
      splited = ejs_context_elemt[a].split("|");
      document.write('<div class="ejs_context_menuitems" onClick="'+splited[1]+'" onMouseOver="ejs_context_hl(1, this)" onMouseOut="ejs_context_hl(0, this)">'+splited[0]+'</div>');
      ejs_context_ombre_txt += '<div class="ejs_context_menuitems">'+splited[0]+'</div>';
      }
   else
      {
      document.write('<div class="ejs_context_menuitems" onClick="'+splited[1]+'" onMouseOver="ejs_context_hl(1, this)" onMouseOut="ejs_context_hl(0, this)"><hr width="195" size="1" color="9D9DA1" /></div>');
      ejs_context_ombre_txt += '<div class="ejs_context_menuitems"><hr width="195" size="1" color="9D9DA1" /></div>';
      }
   }
document.write('</div><div id=ejs_context_ombre style="z-index:400;position:absolute;width:200px; border:1px solid #9D9DA1; background-color:#9D9DA1; font-family:Microsoft sans serif; font-size:12px; color:#9D9DA1 ;cursor:default; visibility:hidden;padding:3">'+ejs_context_ombre_txt+'</div>');

// EVENEMENTS
document.onmousemove = ejs_context_position;
document.oncontextmenu = ejs_context_open;
document.onclick = ejs_context_close;
</script>


Et voici que deux problèmes se posent à moi.
Le premier est que j'aimerais ajouter la fonction "copier" dans le menu du clic droit, et ce dans le script, le problème est que je ne connais pas la commande javascript qui pourrait me permettre de faire un copier. J'ai tenter plusieurs choses, mais rien qui ne fonctionner, j'obtiens effectivement la rubrique "copier", mais pas la fonction :cry:

Par ailleurs, je me prends la tête en essayant d'appeler mon script via des link, mais impossible :? Donc si vous avez une petite soluce, merci bien, quitte à ne pouvoir ajouter la fonction copier :wink:

à bientôt!!

Piafou

3Crea
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 6
Inscription: 29 Nov 2005

Message le Ven Déc 02, 2005 8:59

Bonjour

En javascript, il existe la méthode .execCommand qui peut prendre en paramètre "copy", "cut" ou "paste" (entre autres) pour faire la fonction copier que tu souhaites.

Sinon, j'avoue que je n'ai pas bien saisi la deuxième question...


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités