我們介紹一個可兼容所有瀏覽器的加入收藏代碼代碼,大概原理是這樣的我們根據獲取用戶navigator.userAgent.toLowerCase()信息來判斷瀏覽器,根據瀏覽器是否支持加入收藏js命令,如果可以自動收藏否則就提示ctrl+D手動收藏了。
1 function addFavorite2() { 2 var url = window.location; 3 var title = document.title; 4 var ua = navigator.userAgent.toLowerCase(); 5 if (ua.indexOf("360se") > -1) { 6 alert("由於360瀏覽器功能限制,請按 Ctrl+D 手動收藏!"); 7 } 8 else if (ua.indexOf("msie 8") > -1) { 9 window.external.AddToFavoritesBar(url, title); //IE8 10 } 11 else if (document.all) { 12 try{ 13 window.external.addFavorite(url, title); 14 }catch(e){ 15 alert('您的瀏覽器不支持,請按 Ctrl+D 手動收藏!'); 16 } 17 } 18 else if (window.sidebar) { 19 window.sidebar.addPanel(title, url, ""); 20 } 21 else { 22 alert('您的瀏覽器不支持,請按 Ctrl+D 手動收藏!'); 23 } 24 }
復制本頁面代碼保存成js文件,然后在要收藏的地方加上
<a href=# rel="sidebar" onclick="javascript:addFavorite2()">加入收藏</a>
如果 <a>上面沒有加 rel="sidebar" ,那么將會報錯: window.sidebar.addPanel is not a function
設為首頁
function SetHome(obj,vrl) { try { obj.style.behavior='url(#default#homepage)';obj.setHomePage(vrl); } catch(e){ if(window.netscape) { 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',vrl); } } }
<a onclick="SetHome(this,window.location)" style="cursor:hand">設為首頁</a>