在javascript中找到链接

时间:2018-07-15 09:18:52

标签: javascript hyperlink

这是我项目中的代码:

<textarea id="url" ></textarea>
<script type="text/javascript">
function convert()
{
  var text=document.getElementById("url").value;
  var exp = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;
  var text1=text.replace(exp, "<a href='$1'>$1</a>");
  var exp2 =/(^|[^\/])(www\.[\S]+(\b|$))/gim;
  document.getElementById("converted_url").innerHTML=text1.replace(exp2, '$1<a target="_blank" href="http://$2">$2</a>');
}
$(document).ready(function(){
   $("#url").keypress(function( event ) {
      $("#converted_url").html($(this).val());
         if ( event.which == 32 ) {
            convert();
         }
  }).keyup(function(){
     $("#converted_url").html($(this).val());
  }) ;
 });
</script>
<p id="converted_url" ></p>

当我在textarea中键入内容并在文本中有链接时按空格键,代码将链接converted_url中的url。

我想知道如何仅在可能的情况下在文本区域中显示链接。

如果没有,我该怎么做以键入文本并将链接显示在一个地方。

1 个答案:

答案 0 :(得分:0)

您无法在文本区域中显示标签。因此,您可以改用div contenteditable。在jsfiddle.net

上尝试以下代码

基本上,这些函数仅替换div中html源代码中标记外部的链接,然后替换文本末尾的光标。

祝你好运。