Detect Visited Link In Chrome
A_horse_with_no_name is right. The :visited
security issue was fixed in 2010 by the browser vendors, after a nifty demo (Spyjax; no longer up) demonstrated that any webpage could discover whether you've visited any given URL. You can verify that getComputedStyle
on a link no longer returns the :visited
color--even within the same domain:
// Test I used within the JS console.// :visited is no longer detectable by getComputedStyle.function getLinkColor(url) { var a = document.createElement('a'); a.href = a.textContent = url; document.body.appendChild(a); return document.defaultView.getComputedStyle(a, null).color;}getLinkColor('http://stackoverflow.com/questions/5394099/detect-visited-link-in-chrome');getLinkColor('http://stackoverflow.com/some-fake-path');
For Chrome extensions, if you want to detect whether a user has visited a URL, I think you'll have to request the "history"
permission and call chrome.history.getVisits
.