最近作网站首页,需要在首页添加设置首页和加入收藏的功能,在网上搜索了很多资料,最后发现基本是如出一辙,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"); }这个代码在第一次点击时能够实现加入收藏的功能,但是该连接在点击一次后却无法在点击第二次,第三次...
在此将此问题公布出来,希望能够得到诸位大虾的高见