您的位置:首页 > Web前端 > JavaScript

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

2009-01-03 11:21 441 查看
IE6、IE7 的“加入收藏”代码:

window.external.addFavorite(sURL, sTitle);
说明:
addFavorite 的第一个字母a不是大写!纵然微软参考上是大写,但“事实胜于雄辩”。

Firefox 的“加入收藏”代码:

方法一、
<a href="http://blog.csdn.net/pengyouchuan/" 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>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: