Skip to content

Tiny little tool to find URLs in a string of text and hyperlink them

License

Notifications You must be signed in to change notification settings

freechessclub/autolink-js

 
 

Repository files navigation

autolink-js

autolink-js is a small (about half a kilobyte), simple, and tested JavaScript tool that takes a string of text, finds URLs within it, and hyperlinks them.

Why bother releasing such a tiny little method?

I recently needed to find and hyperlink URLs in user-submitted text and was surprised to find that doing what seemed like such a simple task wasn't already a Solved Problem. Different regex solutions led to different unwanted side effects, and other utilities were far, far more complex and feature rich than I needed.

Basic Usage

autolink-js adds an autoLink() method to JavaScript's String prototype, so you can use it on any JavaScript string. Take a look at the tests, but essentially, after including either autolink.js or autolink-min.js to your page, it works like this:

// Input
autoLink("This is a link to Google https://google.com")

// Output
"This is a link to Google <a href='https://google.com'>https://google.com</a>"

Additional Options

You can pass any additional HTML attributes to the anchor tag with a JavaScript object, like this:

// Input
autoLink("This is a link to Google https://google.com", { target: "_blank", rel: "", id: "1" })

// Output
"This is a link to Google <a href='https://google.com' target='_blank' rel='' id='1'>https://google.com</a>"

Callback

Callback option can be used to redefine how links will be rendered.

// Input
autoLink("This is a link to image https://example.com/logo.png", {
  callback: function(url) {
    return /\.(gif|png|jpe?g)$/i.test(url) ? '<img src="' + url + '">' : null;
  }
});

// Output
"This is a link to image <img src='https://example.com/logo.png'>"

Example

Open example/example.html in your web browser and view the source for a simple but full-featured example of using with jQuery.

Running the tests

After cloning this repository, simply open test/suite.html in your web browser. The tests will run automatically.

About

Tiny little tool to find URLs in a string of text and hyperlink them

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 85.0%
  • CoffeeScript 8.8%
  • HTML 3.7%
  • CSS 2.5%