Need help with noreferrer?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

knu
127 Stars 41 Forks Other 21 Commits 2 Opened issues

Description

Cross-browser support for HTML5's noreferrer link type.

Services available

!
?

Need anything else?

Contributors list

# 1,430
Ruby
Rails
XML
Twitter
21 commits

noreferrer.js

Cross-browser support for HTML5's noreferrer link type.

HTML5 defines a new link type called "noreferrer" which may be used to annotate a hyperlink to indicate that a Referer (sic) header should not be sent when following the link.

This is particularly useful when you want to put hyperlinks to external resources on your private site which URL should not be leaked.

At the time of writing, WebKit-based browsers such as Safari, MobileSafari, Chrome and Opera 15+ already support this feature but IE, Firefox and Opera 12- do not.

This package contains two variants of JavaScript implementations that add the "noreferrer" link type to those browsers without native support.

Requirements

  • noreferrer.js depends on:

    • prototype.js 1.6 or later
  • jquery.noreferrer.js depends on:

    • jQuery 1.2 or later

Compatibility

  • Chrome, Safari, MobileSafari, Opera 15+ and other WebKit-based browsers

    These have native support for noreferrer links, so noreferrer.js does nothing.

  • IE 6+

    noreferrer.js uses a simple meta refresh technique to suppress Referer, plus disables opening a new window with middle clicking.

  • Opera 12-

    There seems to be no way to prevent the browser from sending a Referer header, so noreferrer.js replaces all noreferrer links with those using Google's redirector.

  • Firefox and other browsers

    noreferrer.js uses a data URI technique to suppress Referer, plus disables opening a new window with middle clicking.

Usage

Just include either noreferrer.js or jquery.noreferrer.js, depending on the JavaScript framework you are using, at the end of the

part of an HTML document, and an onload event handler is attached to enable the noreferrer trick for each link with the noreferrer rel type.

It does not deal with dynamically created links at the moment.

History

  • v0.1.3

    • Bundled jquery.noreferrer.js.
    • Make small optimizations.

Author

Akinori MUSHA <[email protected]>

License

All files except for ones under "vendor" are licensed under a 2-clause BSD license.

See LICENSE for the copyright information and license terms.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.