“Favorite” Link — How To Create a Bookmark Link

By  on  

I get a lot of requests from customers to add a link to their website that allows the user to "bookmark" their site. I generally try to get them to drop that idea. The functionality of an "add to favorites" link isn't cross-browser compatible -- neither Firefox or Opera will allow it. Internet Explorer does allow favorite links and most of the internet still uses IE, so I do have a script to accomplish this goal.

The Code

/*  BOOKMARK THE PAGE  */
function bookmark()
{
	if ((navigator.appName == 'Microsoft Internet Explorer') && (parseInt(navigator.appVersion) >= 4))
	{
		window.external.AddFavorite(window.location,document.title);
	}
	else
	{
		alert('Don\'t forget to bookmark us! (CTRL-D)');
	}
}

The Explanation

It's a pretty simple JavaScript function. The function first checks to see if the user is browsing using Internet Explorer. If so, the function makes the appropriate call to IE, providing the page URL and title. If the user doesn't use Internet Explorer, short instructions are provided to prompt the user's browser to to add the current page as a favorite.

Recent Features

  • By
    Regular Expressions for the Rest of Us

    Sooner or later you'll run across a regular expression. With their cryptic syntax, confusing documentation and massive learning curve, most developers settle for copying and pasting them from StackOverflow and hoping they work. But what if you could decode regular expressions and harness their power? In...

  • By
    Serving Fonts from CDN

    For maximum performance, we all know we must put our assets on CDN (another domain).  Along with those assets are custom web fonts.  Unfortunately custom web fonts via CDN (or any cross-domain font request) don't work in Firefox or Internet Explorer (correctly so, by spec) though...

Incredible Demos

  • By
    MooTools Gone Wild: Element Flashing

    If you're like me and lay awake in bed at night, you've flipped on the TV and seen the commercials: misguided, attention-starved college girls fueled by alcohol ruining their futures by flashing lame camera-men on Spring Break. Why do they do it? Attention...

  • By
    CSS pointer-events

    The responsibilities taken on by CSS seems to be increasingly blurring with JavaScript. Consider the -webkit-touch-callout CSS property, which prevents iOS's link dialog menu when you tap and hold a clickable element. The pointer-events property is even more JavaScript-like, preventing: click actions from doing...

Discussion

  1. Nice post. Are you calling the bookmark function when the page loads? It seems like it since the else statement is an alert box. Perhaps a better way is by calling the function onclick of a link. Like you, I wouldn’t personally want to add this, but I think targeting specific browsers and using the addons that each browser offers is a good thing if you can provide a better experience without affecting the other visitors.

  2. No Jeremy, the function isn’t run when the page loads. You would simply call this function from a link.

    Calling this implicitly for all users would be website suicide.

  3. a

    why only work for IE when no one uses that?

  4. Bangladesh varsity information and admit

  5. Samrat

    Nice post. I saw a similar script on another website and was wondering why it didn’t work on my Firefox.

  6. Thanks to the iPad and similar devices, this will become obsolete.

  7. Is this functional on all browser? I think i should try the code myself. Thanks for sharing. But if you got an idea already, please tell me or send me the right script for cross browser for bookmark us script. Thanks.

  8. Thank you so much, I’ll be putting your code at my sites. I already tried it and it works like a charm. Your the best admin. Home you can modify it on firefox so that the popup bookmark will be the same result as I.E. Thanks. I appreciate your help!

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!