복붙노트

[JQUERY] 링크 스크립트에 jQuery를 텍스트? [복제]

JQUERY

링크 스크립트에 jQuery를 텍스트? [복제]

해결법


  1. 1.당신은 정말 (앵커 태그를 만드는 것보다 다른) DOM 탐색 / 조작 우려하지 않을로 JQuery와 여기에 당신에게 훨씬 도움이 될 수 없습니다. 모든 URL은 아마도

    태그에있는 것처럼.

    당신은 정말 (앵커 태그를 만드는 것보다 다른) DOM 탐색 / 조작 우려하지 않을로 JQuery와 여기에 당신에게 훨씬 도움이 될 수 없습니다. 모든 URL은 아마도

    태그에있는 것처럼.

    바닐라 자바 ​​스크립트 솔루션은 당신이 원하는 아마, 운명에는 그것이 있기 때문에,이 사람은 당신이 덮여 있어야한다.


  2. 2.참고 :이 스크립트의 업데이트 및 수정 된 버전이 https://github.com/maranomynet/linkify에서 사용할 수 있습니다 (GPL / MIT 라이센스)

    참고 :이 스크립트의 업데이트 및 수정 된 버전이 https://github.com/maranomynet/linkify에서 사용할 수 있습니다 (GPL / MIT 라이센스)

    흠 ... 나에게이 jQuery를위한 완벽한 작업처럼 보인다.

    ... 이런 식으로 뭔가 내 마음의 맨 위에 떨어져왔다 :

    // Define: Linkify plugin
    (function($){
    
      var url1 = /(^|<|\s)(www\..+?\..+?)(\s|>|$)/g,
          url2 = /(^|<|\s)(((https?|ftp):\/\/|mailto:).+?)(\s|>|$)/g,
    
          linkifyThis = function () {
            var childNodes = this.childNodes,
                i = childNodes.length;
            while(i--)
            {
              var n = childNodes[i];
              if (n.nodeType == 3) {
                var html = $.trim(n.nodeValue);
                if (html)
                {
                  html = html.replace(/&/g, '&')
                             .replace(/</g, '&lt;')
                             .replace(/>/g, '&gt;')
                             .replace(url1, '$1<a href="http://$2">$2</a>$3')
                             .replace(url2, '$1<a href="$2">$2</a>$5');
                  $(n).after(html).remove();
                }
              }
              else if (n.nodeType == 1  &&  !/^(a|button|textarea)$/i.test(n.tagName)) {
                linkifyThis.call(n);
              }
            }
          };
    
      $.fn.linkify = function () {
        return this.each(linkifyThis);
      };
    
    })(jQuery);
    
    // Usage example:
    jQuery('div.textbody').linkify();
    

    이 링크에 다음의 모든 항목을 설정하려고 시도합니다 :

    즐겨 :-)


  3. 3.나는이 기능 내가 전화를

    나는이 기능 내가 전화를

    textToLinks: function(text) {
    
        var re = /(https?:\/\/(([-\w\.]+)+(:\d+)?(\/([\w/_\.]*(\?\S+)?)?)?))/g;
        return text.replace(re, "<a href=\"$1\" title=\"\">$1</a>");
      }
    

  4. 4.난 당신이 브라우저에 렌더링하기 전에 정적 페이지에 이렇게 제안, 또는 당신은 당신의 가난한 방문자에 변환 계산의 부담을 누르면됩니다. :) 여기에 루비 (표준 출력에 쓰기, 표준 입력에서 읽기)에서 할 수있는 방법은 다음과 같습니다

    난 당신이 브라우저에 렌더링하기 전에 정적 페이지에 이렇게 제안, 또는 당신은 당신의 가난한 방문자에 변환 계산의 부담을 누르면됩니다. :) 여기에 루비 (표준 출력에 쓰기, 표준 입력에서 읽기)에서 할 수있는 방법은 다음과 같습니다

    while line = gets
      puts line.gsub( /(^|[^"'])(http\S+)/, "\\1<a href='\\2'>\\2</a>" )
    end
    

    물론, 당신은 당신이 원하는대로 강력한으로 이것을 만드는 방법에 대해 생각하는 것이 좋습니다. 위는 http로 시작하는 모든 URL을 필요로하고, 따옴표에있는 URL을 변환하지 확인합니다 (즉, 이미 내부에있다). 그것은 ftp를 잡을 수 없습니다 : // 흔한 :. 그것은 행복하게 당신이 일이하고 싶지 않을 수도 있습니다