javascript 加入收藏、设为首页(IE,firefox兼容脚本之家版)
具体的演示,可以参考我们最下面的 加入收藏 设为首页功能。
function addBookmark(title,url) {
if (window.sidebar) {
window.sidebar.addPanel(title,url,"");
} else if( document.all ) {
window.external.AddFavorite(url,title);
} else if( window.opera && window.print ) {
return true;
}
}
function setHome(url)
{
if (document.all){
document.body.style.behavior='url(#default#homepage)';
document.body.setHomePage(url);
}else if (window.sidebar){
if(window.netscape){
try{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
}catch (e){
alert( "该操作被浏览器拒绝,如果想启用该功能,请在地址栏内输入 about:config,然后将项 signed.applets.codebase_principal_support 值该为true" );
}
}
if(window.confirm("你确定要设置"+url+"为首页吗?")==1){
var prefs = Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces.nsIPrefBranch);
prefs.setCharPref('browser.startup.homepage',url);
}
}
}
设为首页 - 加入收藏
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
注意上面的网址必须带http://要不在firefox下不通过,比较郁闷。
另外提供一些定义的可传参的函数:
代码如下:
<script language="JavaScript">
<!--
/**
* 添加收藏
* @param {} sURL 收藏链接地址
* @param {} sTitle 收藏标题
*/
function addBookmark(url, title) {
if(document.all) {
try
{
window.external.addFavorite(url, title);
}
catch (e1)
{
try
{
window.external.addToFavoritesBar(url, title);
}
catch (e2)
{
alert('加入收藏失败,请您手工加入。')
}
}
} else if (window.external) {
window.sidebar.addPanel(title, url,"");
} else {
alert('加入收藏失败,请您手工加入。')
}
}
/**
* 设为首页
* @param {} obj 当前对象,一般是使用this引用。
* @param {} vrl 主页URL
*/
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);
}
}
}
//-->
</script>