基于JavaScript代码实现兼容各浏览器的设为首页和加入收藏


Posted in Javascript onJanuary 07, 2016

现在的浏览器越来越多,这就使得网页设计的兼容性要求越来越高,像常用的设为首页、加入收藏代码,一般的虽然简洁,但兼容性却非常不好,加入收藏和设为首页代码几乎各个网站都在头部放上一个,有没有效果先不管,需求应该是有的。

但是由于浏览器的兼容性问题,之前用的很多代码都失去效果,下面就给出一段能够兼容各个浏览器的代码,也不能够算是兼容,只能说在不支持的浏览器中能够给出提示,代码如下:

<!doctype html>
<html>
<head>
<title>加入收藏和设为首页</title>
<script type="text/javascript">
//加入收藏
function AddFavorite(sURL, sTitle){
sURL = encodeURI(sURL); 
try{ 
window.external.addFavorite(sURL, sTitle); 
}
catch(e){ 
try{ 
window.sidebar.addPanel(sTitle, sURL, ""); 
}
catch(e){ 
alert("加入收藏失败,请使用Ctrl+D进行添加,或手动在浏览器里进行设置.");
} 
}
}
//设为首页
function SetHome(url){
if (document.all){
document.body.style.behavior='url(#default#homepage)';
document.body.setHomePage(url);
}
else{
alert("您好,您的浏览器不支持自动设置页面为首页功能,请您手动在浏览器里设置该页面为首页!");
}
} 
</script>
</head>
<body>
<a href="javascript:void(0)">设为首页</a>
<a href="javascript:void(0)">加入收藏</a>
</body>
</html>

以上代码简短易懂,可以兼容各个浏览器加入收藏和设为首页,有问题欢迎提出,小编会及时和大家联系的,谢谢!

下面给大家分享一段jquery代码实现加入收藏夹功能

//设为首页
function SetHomePage() {
  if (document.all) {
    document.body.style.behavior = 'url(#default#homepage)';
    document.body.setHomePage('http://www.87cool.com');
  }
  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', 'http://www.87cool.com');
  }
}
//加入收藏夹
function AddFavorite() {
  var title = document.title;
  var url = location.href;
  if (window.sidebar) {
    window.sidebar.addPanel(title, url, "");
  } else if (document.all) {
    window.external.AddFavorite(url, title);
  } else {
    return true;
  }
}
Javascript 相关文章推荐
常用参考资料(手册)下载或者链接
Jul 22 Javascript
javascript+iframe 实现无刷新载入整页的代码
Mar 17 Javascript
本地对象Array的原型扩展实现代码
Dec 04 Javascript
基于node.js的快速开发透明代理
Dec 25 Javascript
学习javascript,实现插入排序实现代码
Jul 31 Javascript
微信小程序 滚动到某个位置添加class效果实现代码
Apr 19 Javascript
requirejs + vue 项目搭建详解
Jun 16 Javascript
jQuery中的类名选择器(.class)用法简单示例
May 14 jQuery
在vue中使用公共过滤器filter的方法
Jun 26 Javascript
javascript实现文本框标签验证的实例代码
Oct 14 Javascript
JavaScript常用内置对象用法分析
Jul 09 Javascript
JavaScript仿京东轮播图效果
Feb 25 Javascript
JavaScript设计模式初探
Jan 07 #Javascript
JavaScript类型系统之Object详解
Jan 07 #Javascript
7个去伪存真的JavaScript面试题
Jan 07 #Javascript
jQuery表格插件datatables用法详解
Nov 23 #Javascript
详解JavaScript UTC时间转换方法
Jan 07 #Javascript
jQuery formValidator表单验证
Jan 07 #Javascript
JavaScript中的原始值和复杂值
Jan 07 #Javascript
You might like
php中mysql连接方式PDO使用详解
2015/02/25 PHP
php传值赋值和传地址赋值用法实例分析
2015/06/20 PHP
PHP中类的继承和用法实例分析
2016/05/24 PHP
PHP实现向关联数组指定的Key之前插入元素的方法
2017/06/06 PHP
20个非常有用的PHP类库 加速php开发
2010/01/15 Javascript
DOM和XMLHttpRequest对象的属性和方法整理
2012/01/04 Javascript
Mac/Windows下如何安装Node.js
2013/11/22 Javascript
原生JS和jQuery版实现文件上传功能
2016/04/18 Javascript
NODE.JS跨域问题的完美解决方案
2016/10/20 Javascript
jQuery判断邮箱格式对错实例代码讲解
2017/04/12 jQuery
Angular6 正则表达式允许输入部分中文字符
2018/09/10 Javascript
react 国际化的实现代码示例
2018/09/14 Javascript
node使用mysql获取数据库数据中文乱码问题的解决
2019/12/02 Javascript
ES6中Set和Map用法实例详解
2020/03/02 Javascript
Django静态资源URL STATIC_ROOT的配置方法
2014/11/08 Python
用Python设计一个经典小游戏
2017/05/15 Python
Django admin实现图书管理系统菜鸟级教程完整实例
2017/12/12 Python
tensor和numpy的互相转换的实现示例
2019/08/02 Python
Python调用graphviz绘制结构化图形网络示例
2019/11/22 Python
Python如何在循环内使用list.remove()
2020/06/01 Python
Python Selenium自动化获取页面信息的方法
2020/08/31 Python
python logging模块的使用
2020/09/07 Python
python破解同事的压缩包密码
2020/10/14 Python
关于python中remove的一些坑小结
2021/01/04 Python
Python 调用C++封装的进一步探索交流
2021/03/04 Python
HTML5 直播疯狂点赞动画实现代码 附源码
2020/04/14 HTML / CSS
Office DEPOT法国官网:欧迪办公用品采购
2018/01/03 全球购物
罗马尼亚购物网站:Vivantis.ro
2019/07/20 全球购物
美国优质马术服装购买网站:Breeches.com
2019/12/16 全球购物
Kingsoft金山公司C/C++笔试题
2016/05/10 面试题
自我评价怎么写好呢?
2013/12/05 职场文书
招标授权委托书样本
2014/09/23 职场文书
汤姆叔叔的小屋读书笔记
2015/06/30 职场文书
JavaScript利用html5新方法操作元素类名详解
2021/11/27 Javascript
python 实现图片特效处理
2022/04/03 Python
阿里面试Nacos配置中心交互模型是push还是pull原理解析
2022/07/23 Java/Android