javascript 加入收藏、设为首页(IE,firefox兼容)
作者:bea
具体的演示,可以参考最下面的 加入收藏 设为首页功能。
<script type="text/javascript">
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);
}
}
}
</script>
<a href="javascript:void(null)" onClick="setHome('http://');">设为首页</a> - <a href="javascript:addBookmark('','http://')">加入收藏</a>
[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("此操作被浏览器拒绝!
请在浏览器地址栏输入“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', vrl);
}
}
}
//-->
</script>
猜你喜欢
您可能感兴趣的文章:
- JS 动态获取节点代码innerHTML分析 [IE,FF]
- Aptana调试javascript图解教程
- jQuery chili图片远处放大插件
- document.body.scrollTop 值总为0的解决方法 比较常见的标准问题
- javascript 设置某DIV区域内的checkbox复选框
- Javascript 构造函数,公有,私有特权和静态成员定义方法
- javascript 新闻列表排序简单封装
- JavaScript Alert通用美化类
- js鼠标移动在title中显示图片的效果代码
- [原创]javascript代码在ie8里报错 document.getElementById(...) 为空或不是对象的解决方法
- javascript &&和||运算法的另类使用技巧
- JavaScript 字符串操作的几种常见方法
- javascript showModalDialog 多层模态窗口实现页面提交及刷新的代码
- JavaScript 闭包在封装函数时的简单分析
- extJs 文本框后面加上说明文字+下拉列表选中值后触发事件
- Javascript 复制数组实现代码
- js setattribute批量设置css样式
- Javascript 二维数组
- isArray()函数(JavaScript中对象类型判断的几种方法)