Générer des liens et désélectionner [Résolu]

Bestdoud 244 Messages postés mercredi 22 janvier 2003Date d'inscription 28 décembre 2008 Dernière intervention - 19 mai 2007 à 02:35 - Dernière réponse : Bestdoud 244 Messages postés mercredi 22 janvier 2003Date d'inscription 28 décembre 2008 Dernière intervention
- 19 mai 2007 à 23:55
Bonjour,
Après avoir fouillé sur tout le site et sur google en vain,j'aurais 2 questions:

1)Première question:

J'ai une chaine de texte contenant des liens comme par exemple http://www.google.fr. Y a t-il un moyen de les formater automatiquements pour qu'il soient cliquables:
donc comme ça: [http://www.google.fr>
ou que ca soit automatique sur la page

2)Question:

J'ai une fonction qui met dans le press papier la sélection de la page
voir source ici: http://www.javascriptfr.com/infomsg_COPIER-SELECTION-DANS-PRESS-PAPIER_944397.aspx#4

J'aimerais qu'une fois la sélection mise dans le press papier que la sélection s'enlève comme si je cliquais un coup à côté.

merci pour votre aide
Afficher la suite 

Votre réponse

12 réponses

Meilleure réponse
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 19 mai 2007 à 16:01
3
Merci
ah... fallait le dire

<html>

du texte
   

</html>

    testé uniquement avec IE, mais pas loin pour les autres...



<hr />



Cordialement                Bul     [mon Site]     [M'écrire]



<hr />

Merci cs_bultez 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 69 internautes ce mois-ci

Commenter la réponse de cs_bultez
coucou747 12336 Messages postés mardi 10 février 2004Date d'inscription 30 juillet 2012 Dernière intervention - 19 mai 2007 à 10:32
0
Merci
Salut,

faut faire des regexp, str.replace(/(http:\/\/(\S+))/,'[$1 $1]');

un truc comme ca (j'ai plus fait de js depuis longtemps desole)

In a dream, I saw me, drop dead... U was there, U cried... It was just a dream, if I die, U won't cry, maybe, U'll be happy

Mon site (articles sur la programmation et programmes)
Commenter la réponse de coucou747
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 19 mai 2007 à 11:33
0
Merci
Bonjour,

pour la 1ère question, ce lien il faut l'ajouter "quelquepart" ? non ?
    dans la body par exemple ?
    donc avec innerHTML ou createElement+appendChild

pour la 2ème question.
    <textarea id="txt">exemple</textarea>
    <script type="text/javascript">
        // sélection pour l'essai      
        var t=document.getElementById("txt");
        t.select();
    </script>
   
très loin d'être sûr qu'on ne puisse pas faire mieux !!!

<hr />


Cordialement            Bul     [mon Site]     [M'écrire]



<hr />
Commenter la réponse de cs_bultez
yousfane 246 Messages postés vendredi 24 novembre 2006Date d'inscription 21 décembre 2007 Dernière intervention - 19 mai 2007 à 12:30
0
Merci
Salut
str.replace(/(http:\/\/(\S+))/,'[$1 $1]'); ne remplace que la premiere url il faut faire
str.replace(/(http:\/\/(\S+))/g,'[$1 $1]');
Commenter la réponse de yousfane
Bestdoud 244 Messages postés mercredi 22 janvier 2003Date d'inscription 28 décembre 2008 Dernière intervention - 19 mai 2007 à 13:55
0
Merci
Bonjour,

Le regex fonctionne mais si j'ai des codes couleurs avant ou dans l'url ca ne marche plus. C'est un peu plus embettant je pense.

pour la déselection j'ai pas réussi à le faire mais je cherche. je reviendrai un peu plus tard pour ca.
Commenter la réponse de Bestdoud
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 19 mai 2007 à 14:42
0
Merci
>>Le regex fonctionne

    si c'est déjà dans body, ça ne devrait pas être loin, effectivement
    je n'avais pas compris ça comme ça.

>>pour la déselection j'ai pas réussi
    tu as essayé ce que je te proposais ? car pour moi, ça marche.



<hr />



Cordialement                Bul     [mon Site]     [M'écrire]



<hr />
Commenter la réponse de cs_bultez
Bestdoud 244 Messages postés mercredi 22 janvier 2003Date d'inscription 28 décembre 2008 Dernière intervention - 19 mai 2007 à 15:01
0
Merci
>>déselection:
le problème c'est que j'utilise pas de textarea, c'est dans le body directement.

>>le regex:
Ce qui pourait aussi m'aller c'est de récupérer ce qu'il y a sous la souris et si ca corrspond à un lien et bien que ca s'ouvre comme un lien quand je clique. J'ai pas besoin que ca se voit que c'est un lien. Si c'est écrit comme un texte normal ça me va aussi.

Sinon c'est dans une chaine au format HTML mais dont les liens ne sont pas formaté avecdes codes couleurs un peu n'importe ou
Commenter la réponse de Bestdoud
Bestdoud 244 Messages postés mercredi 22 janvier 2003Date d'inscription 28 décembre 2008 Dernière intervention - 19 mai 2007 à 18:32
0
Merci
Merci ca marche pour la déselection.
J'ai juste pris la commande document.execCommand('unselect');
que j'ai mis après avoir mis le texte dans le press papier
Commenter la réponse de Bestdoud
yousfane 246 Messages postés vendredi 24 novembre 2006Date d'inscription 21 décembre 2007 Dernière intervention - 19 mai 2007 à 23:36
0
Merci
Salut
essai avec ce code si tu veux garder les couleurs de tes url:

<script langage="javascript">
function lien(){
var page = document.body.innerText;
page = page.replace(/(http:\/\/(\S+))/g,"$1");
document.body.innerHTML = page
}
function ouvrire(url){
window.location.href = url
}
</script>

http://google.fr
http://javascriptfr.com
Commenter la réponse de yousfane
Bestdoud 244 Messages postés mercredi 22 janvier 2003Date d'inscription 28 décembre 2008 Dernière intervention - 19 mai 2007 à 23:46
0
Merci
le problème c'est que ma page est vide au chargement
et les phrases vienent se mettrent au fur et à mesure que je les envoi
Commenter la réponse de Bestdoud
Bestdoud 244 Messages postés mercredi 22 janvier 2003Date d'inscription 28 décembre 2008 Dernière intervention - 19 mai 2007 à 23:55
0
Merci
ca va pas trop non:
j'envoi mon texte a la fonction ecriture qui se charge d'ajouter les lignes que je lui donne.

voici ma page

<% @LANGUAGE="JavaScript" %><html>
<head>
<meta http-equiv="Content-Language" content="fr">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">

<title>mirc html</title>
</head>




<script language="JavaScript">


function bottom()
 {
 if ((document.body.scrollTop + document.body.clientHeight) == document.body.scrollHeight)
 return 'yes'
 }


function scroll()
  {
 if (bottom() == 'yes')
 scrollAuto();
  }


function scrollAuto()
  {
  window.scrollBy(0,100000);
  }


function ecriture(y)
  {
 var z = bottom();
  addHTML(document.body,'' + y + '');
 if (z == 'yes')
 scrollAuto();
  }


function ouvrire(url){
window.location.href = url
}


 


function ejs_nodroit()
  {
 return(false);
  }


document.oncontextmenu = ejs_nodroit;


function Remplace(expr,a,b) {
      var i=0
      while (i!=-1) {
         i=expr.indexOf(a,i);
         if (i>=0) {
            expr=expr.substring(0,i)+b+expr.substring(i+a.length);
            i+=b.length;
         }
      }
      return expr
   }




function addHTML(element, HTML) {
   var o = document.createElement("htmlSection");
   o.innerHTML = HTML;
   element.appendChild(o)
}


function getSelectedText(){
   if (window.getSelection){
      var str = window.getSelection();
   }else if (document.getSelection){
      var str = document.getSelection();
   }else {
      var str = document.selection.createRange().text;
   }
   if (str) {
      copyclipboard(str);
document.execCommand('unselect');
   }
}




function copyclipboard(intext)
{  window.clipboardData.setData('Text', intext);     }


</script>




<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" height="100%">
  <tr>
     <td width="100%" valign="bottom">





</html>
Commenter la réponse de Bestdoud
Bestdoud 244 Messages postés mercredi 22 janvier 2003Date d'inscription 28 décembre 2008 Dernière intervention - 19 mai 2007 à 23:55
0
Merci
Ne pas tenir compte de la fonction remplace
Commenter la réponse de Bestdoud

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.