Reputation: 103
I'm having some trouble using document.referrer on some sites, even the reference site using HTTP protocol.
In what circumstances document.referrer may be empty (except HTTPS to HTTP)?
What is the best way to get the url reference only document.referrer?
In my site, document.referrer is empty, but when I look in Analytics website of references appears.
Upvotes: 9
Views: 39886
Reputation: 21
To answer your second question, this simple script returns the URL of the site you arrived from:
<SCRIPT>
document.write ( document.referrer )
</SCRIPT>
see: https://www.nku.edu/~manningd/javascript/referrer.html
Upvotes: 0
Reputation: 1262
const referrerPage = document.referrer;
if ((referrerPage.indexOf(window.location.href) > -1) !== true) { // If referral is same page then page will not redirect.
if (referrerPage.indexOf('viewplans') <= -1) {
window.location.href = '/';
return false;
}
}
viewplans is the page name.
Upvotes: 0
Reputation: 13103
document.referrer
is not empty
if your site URL was clicked from other website, like from google search, from facebook, twitter, etc...
So, If someone opens your site from bookmark o directly types your site URL, document.referrer
is empty
.
Let's see these examples:
Click this link http://www.w3schools.com/jsref/prop_doc_referrer.asp you can see that document.referrer is http://stackoverflow.com/questions/28646433/problems-with-document-referrer
If you search in google HTML DOM referrer Property
, document.referrer will be http://google.es/...
And if you copy http://www.w3schools.com/jsref/prop_doc_referrer.asp
opens new tab in your browser and paste it, document.referrer
will be empty
.
Upvotes: 15