Javascript 兼容 IE6、IE7、FF 的“加入收藏”“设为首页”

IE6、IE7 的“加入收藏”代码:
window.external.addFavorite(sURL, sTitle);
说明:
addFavorite 的第一个字母a不是大写!纵然微软参考上是大写,但“事实胜于雄辩”。
Firefox 的“加入收藏”代码:
方法一、
<a href="http://www.2cto.com" title="YCPENG's blog" rel="sidebar">加入收藏</a>
关键在于 rel="sidebar";href 属性值作为收藏网址;title 作为收藏名称。
方法二、
window.sidebar.addPanel(sTitle, sURL, "");
第一个参数是收藏名称;第二个参数是收藏网址;第三个是自定义 Tab 所需的 URL,为零长度字符串即可。注意参数顺序与 addFavorite 不同。我们推荐第二种方法。
不论哪一种方法,加入收藏夹后,单击收藏的项目都是在侧边栏(sidebar)中打开网页,要在主窗口中打开只有两种办法:法一是右键打开;法二是右键改其属性。这不能不说是 Firefox 收藏夹的遗憾。
兼容 IE6、IE7、FF 的“加入收藏”完整代码:
<script type="text/javascript" language="javascript">
function AddFavorite(sURL, sTitle) {
    try {
        window.external.addFavorite(sURL, sTitle);
    } catch (e) {
        try {
            window.sidebar.addPanel(sTitle, sURL, "");
        } catch (e) {
            alert("加入收藏失败,请手动添加.");
        }
    }
}
function setHomepage(pageURL) {
    if (document.all) {
        document.body.style.behavior='url(#default#homepage)';
        document.body.setHomePage(pageURL);
    }
    else if (window.sidebar) {
        if(window.netscape) {
            try {
                netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
            }
            catch (e) {
                alert( "该操作被浏览器 拒绝,如果想启用该功能,请在地址栏内输入 about:config,然后将项signed.applets.codebase_principal_support 值该为true" );
            }
        }
        var prefs = Components.classes['@mozilla.org/preferences-service;1'].getService(Components. interfaces.nsIPrefBranch);
        prefs.setCharPref('browser.startup.homepage',pageURL);
    }
}
</script>
<a href="javascript:setHomepage('url');">设为首页</a>
<a href="#" onclick="javascript:AddFavorite('url', 'sitename');return false">加入收藏</a>

你可能感兴趣的:(JavaScript,加入收藏,设为主页)