关于“设立首页”和“加入收藏”代码的困惑

关于“设置首页”和“加入收藏”代码的困惑
        最近作网站首页,需要在首页添加设置首页和加入收藏的功能,在网上搜索了很多资料,最后发现基本是如出一辙,copy下来实验后发现存在几个问题
       加入收藏的js代码实现为
<a href="#" onclick="javascript:window.external.addFavorite(url,title);return false;" title='url title' rel="sidebar">[加入收藏]</a>

      上面的代码尽管实现了ie和ff的兼容,也能添加成功,但是在ff中从书签中打开该收藏标签后,页面却是在浏览器sidebar位置显示,给用户的感觉很不好
       设为首页的功能代码为
function setHomePage(obj){
    var aUrls=document.URL.split("/");
    var vDomainName="http://"+aUrls[2]+"/";
    try{//IE
        obj.style.behavior="url(#default#homepage)";
        obj.setHomePage(vDomainName);
    }catch(e){//other
        if(window.netscape) {//ff
            try {
                    netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
            }
            catch (e) {
                    alert("此操作被浏览器拒绝!\n请在浏览器地址栏输入“about:config”并回车\n然后将[signed.applets.codebase_principal_support]设置为'true'");
            }
            var prefs = Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces.nsIPrefBranch);
            prefs.setCharPref('browser.startup.homepage',vDomainName);
         }
    }
    if(window.netscape)alert("ff");
}
这个代码在第一次点击时能够实现加入收藏的功能,但是该连接在点击一次后却无法在点击第二次,第三次...
      在此将此问题公布出来,希望能够得到诸位大虾的高见