基于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 相关文章推荐
prototype 源码中文说明之 prototype.js
Sep 22 Javascript
JavaScript 学习笔记二 字符串拼接
Mar 28 Javascript
二叉树先序遍历的非递归算法具体实现
Jan 09 Javascript
javascript写的一个模拟阅读小说的程序
Apr 04 Javascript
浅谈JavaScript Math和Number对象
Jan 26 Javascript
jquery实现键盘左右翻页特效
Apr 30 Javascript
jQuery实现键盘回车搜索功能
Jul 25 jQuery
laravel5.3 vue 实现收藏夹功能实例详解
Jan 21 Javascript
Vue中的slot使用插槽分发内容的方法
Mar 01 Javascript
js变量值传到php过程详解 将php解析成数据
Jun 26 Javascript
简单分析js中的this的原理
Aug 31 Javascript
微信小程序自定义头部导航栏(组件化)
Nov 15 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
MySQL数据库转移,access,sql server 转 MySQL 的图文教程
2007/09/02 PHP
windows下开发并编译PHP扩展的方法
2011/03/18 PHP
Laravel 4.2 中队列服务(queue)使用感受
2014/10/30 PHP
php生成随机颜色的方法
2014/11/13 PHP
thinkphp模板赋值与替换实例简述
2014/11/24 PHP
浅谈本地WAMP环境的搭建
2015/05/13 PHP
Zend Framework教程之模型Model用法简单实例
2016/03/04 PHP
php伪静态验证码不显示的解决方案
2019/09/26 PHP
利用javascript实现一些常用软件的下载导航
2009/08/03 Javascript
JQuery+JS实现仿百度搜索结果中关键字变色效果
2011/08/02 Javascript
盘点javascript 正则表达式中 中括号的【坑】
2016/03/16 Javascript
ES6记录异步函数的执行时间详解
2016/08/31 Javascript
AngularGauge 属性解析详解
2016/09/06 Javascript
Vue学习之路之登录注册实例代码
2017/07/06 Javascript
Vue-CLI3.x 设置反向代理的方法
2018/12/06 Javascript
Vue中使用canvas方法总结
2019/02/12 Javascript
layui监听select变化,以及设置radio选中的方法
2019/09/24 Javascript
原生js实现随机点餐效果
2019/12/10 Javascript
vue自定义标签和单页面多路由的实现代码
2020/05/03 Javascript
[05:46]DOTA2英雄梦之声_第18期_陈
2014/06/20 DOTA
Python中列表和元组的使用方法和区别详解
2020/12/30 Python
linux下python使用sendmail发送邮件
2018/05/22 Python
Python常见数字运算操作实例小结
2019/03/22 Python
python启动应用程序和终止应用程序的方法
2019/06/28 Python
Tornado实现多进程/多线程的HTTP服务详解
2019/07/25 Python
CSS3伪类选择器:nth-child()
2009/04/02 HTML / CSS
荷兰电脑专场:Paradigit
2018/05/05 全球购物
ANINE BING官方网站:奢华的衣橱基本款和时尚永恒的单品
2019/11/26 全球购物
英国独特家具和家庭用品购物网站:Cuckooland
2020/08/30 全球购物
C#里面可以避免一个类被其他类继承么?如何?
2013/09/26 面试题
临床医学系毕业生推荐信
2013/11/09 职场文书
卫生标语大全
2014/06/21 职场文书
音乐兴趣小组活动总结
2014/07/07 职场文书
房产销售独家委托书范本
2014/10/01 职场文书
2015教师年度考核评语
2015/03/25 职场文书
MySQL的prepare使用以及遇到的bug
2022/05/11 MySQL