954,597 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

"add this site to your bookmarks" in firefox

Is it possible to have a link so users can add my site to their bookmarks via a link? I have found out how to do it using IE but it doesn't work with Firefox.

Cheers for anyhelp.

MrScruff
Junior Poster in Training
89 posts since Nov 2004
Reputation Points: 10
Solved Threads: 0
 

This function appears to work in both:

<script type="text/javascript">
function addBookmark(title,url) {
if (window.sidebar) { 
window.sidebar.addPanel(title, url,""); 
} else if( document.all ) {
window.external.AddFavorite( url, title);
} else if( window.opera && window.print ) {
return true;
}
}
</script>


I'm using that with this link:

<a href="#"
        onmousedown="addBookmark(&#39;Williamsons Oldham&#39;,&#39;http://williamsons-oldham.co.uk/&#39;)"><img src="graphics/bookmark.gif" alt="bookmark this page" border=0 /> Bookmark this page</a>
DaveSW
Master Poster
769 posts since Jul 2004
Reputation Points: 54
Solved Threads: 20
 

Thats a nice little script cheers! I'll try it out soon. :)

MrScruff
Junior Poster in Training
89 posts since Nov 2004
Reputation Points: 10
Solved Threads: 0
 

DaveSW

I love the script. Thanks!

Question: How (if at all), can the "href" command be modified so that - instead of having the title and url "hardcoded" - the command could instead take the "document.title" and the "document.location" (same as I have done for my mailto scripts)...

[document.write(" ") ;]

Thanks...

Viper
Newbie Poster
1 post since May 2005
Reputation Points: 10
Solved Threads: 0
 

hey guys. firstly, thanks for your script! ive been searching and google led me here :)

the only problem i have is that the script defaults the bookmark's property so that it opens in the sidebar. would you be able to tell me how to stop this?

thanks!

pablo

pablo99
Newbie Poster
2 posts since Jul 2005
Reputation Points: 10
Solved Threads: 0
 

Hi Pablo
That doesn't happen for me...
What browser/version are you using?
Dave

DaveSW
Master Poster
769 posts since Jul 2004
Reputation Points: 54
Solved Threads: 20
 

Hi Dave,

I'm using Firefox 1.0.6 and as I say the bookmark opens in the sidebar. I see there is an option in the bookmark properties to turn it off, but for some reason it defaults to on when the bookmark is created.

Pablo

pablo99
Newbie Poster
2 posts since Jul 2005
Reputation Points: 10
Solved Threads: 0
 

Cool script-- thank you very much!

My question is, for my application, I would like to be able to have the bookmark refer to a dynamically changed page...

The part of your example that used:

<a href="#"
        onmousedown="addBookmark('Williamsons Oldham','http://williamsons-oldham.co.uk/')"><img src="graphics/bookmark.gif" alt="bookmark this page" border=0 /> Bookmark this page</a>



is the part I would like to change. Ideally, I would like to use ...addBookmark('mysite',<? echo 'http://mysite'; ?>)... Of course, this does not work, so is there a way to make something similar work?

Where I used the php echo, I just used echo to simulate a very simple php command.

I am sure this is more-or-less a fundamental javascript/php interaction question, but unfortunately I am very new to javascript.

Thanks!!!

heepofajeep
Newbie Poster
4 posts since Jan 2007
Reputation Points: 10
Solved Threads: 0
 

To 'interact' between javascript and PHP, you have to either use PHP to create javascript code, or use XMLHTTP requests in javascript to access PHP scripts and then handle the output if neccessary.

You cannot write javscript code that directly invokes PHP code. javscript is processed on a client's computer; PHP is processed at the server as a page is requested. Javscript only ever runs after the PHP processor has done its work (and removed all PHP blocks from its output files)

That doesn't mean that you cant create javascript code based on or affected by a PHP process; it just means that the javascript in a PHP file will do what the PHP code tells it to do.

So, by the time javascript runs; this PHP code:

addBookmark('mysite',<? echo 'http://mysite'; ?>)


will always end up as this javscript code:

addBookmark('mysite',http://mysite);


And that code wont work because of quoting.

But this PHP code:

addBookmark('mysite','<? echo 'http://mysite'; ?>');


Generates this code:

addBookmark('mysite','http://mysite');


Which should work.

MattEvans
Veteran Poster
Moderator
1,386 posts since Jul 2006
Reputation Points: 522
Solved Threads: 64
 

Cool, thank you much! That did the trick.

So, just one other item ;)... Do you guys know if there is any way to alter the description of the bookmark? This is more of a firefox thing, but it would still be cool, although not necessary.

Thanks again :cool:

heepofajeep
Newbie Poster
4 posts since Jan 2007
Reputation Points: 10
Solved Threads: 0
 

Hi Dave,

I'm using Firefox 1.0.6 and as I say the bookmark opens in the sidebar. I see there is an option in the bookmark properties to turn it off, but for some reason it defaults to on when the bookmark is created.

Pablo

X2... I am using Firefox 2.xx

heepofajeep
Newbie Poster
4 posts since Jan 2007
Reputation Points: 10
Solved Threads: 0
 

???

heepofajeep
Newbie Poster
4 posts since Jan 2007
Reputation Points: 10
Solved Threads: 0
 

Hi, two things. First the question about dynamic website name. I use a bit javascript to determine the url (location.href) and then a bit of javascript to determine the pages title (document.title) and assign variables to them. Then use those variables in the link.

I'll give the whole code I use, because my one is slightly different, but really the only difference is the pageurl and pagetitle variables I have set.

<script type="text/javascript">
var pageurl=location.href;
var pagetitle=document.title;

function bookmarksite(title,url){
if (window.sidebar) 
    window.sidebar.addPanel(title, url, "");
else if(window.opera && window.print){ 
    var elem = document.createElement('a');
    elem.setAttribute('href',url);
    elem.setAttribute('title',title);
    elem.setAttribute('rel','sidebar');
    elem.click();
} 
else if(document.all)
    window.external.AddFavorite(url, title);
}
</script>
<p class="newstext"><a class="news" href="javascript:bookmarksite(pagetitle, pageurl)">Bookmark this page</a></p>


Second thing: Firefox. I'm having the sidebar problem too. And i have firefox 2.x. You can save the bookmark fine, but when you try to open it, it opens in the sidebar. Pretty useless for actually visiting a site!

Anyone have a solution to this?

Aegist
Newbie Poster
2 posts since Apr 2007
Reputation Points: 10
Solved Threads: 0
 

Just want to subscribe to the thread...

Aegist
Newbie Poster
2 posts since Apr 2007
Reputation Points: 10
Solved Threads: 0
 

DaveSW, great script! thanks!

maa_ku
Newbie Poster
1 post since May 2007
Reputation Points: 10
Solved Threads: 0
 

This article has been dead for over three months

Post: Markdown Syntax: Formatting Help
You