基于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 相关文章推荐
SeaJS入门教程系列之完整示例(三)
Mar 03 Javascript
jQuery实现表单提交时判断的方法
Dec 13 Javascript
javascript DIV实现跟随鼠标移动
Mar 19 Javascript
浅谈jquery中的each方法$.each、this.each、$.fn.each
Jun 23 Javascript
Js获取当前日期时间及格式化代码
Sep 17 Javascript
详解Javascript数据类型的转换规则
Dec 12 Javascript
BootStrop前端框架入门教程详解
Dec 25 Javascript
vue项目中使用axios上传图片等文件操作
Nov 02 Javascript
js动态添加表格逐行添加、删除、遍历取值的实例代码
Jan 25 Javascript
Vue 禁用浏览器的前进后退操作
Sep 04 Javascript
React自定义hook的方法
Jun 25 Javascript
pnpm对npm及yarn降维打击详解
Aug 05 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
虹吸式咖啡探讨–研磨
2021/03/03 冲泡冲煮
php addslashes 函数详细分析说明
2009/06/23 PHP
PHP内核探索之解释器的执行过程
2015/12/22 PHP
PHP魔术方法以及关于独立实例与相连实例的全面讲解
2016/10/18 PHP
基于PHP-FPM进程池探秘
2017/10/17 PHP
学习ExtJS border布局
2009/10/08 Javascript
jquery的clone方法应用于textarea和select的bug修复
2014/06/26 Javascript
jquery和js实现对div的隐藏和显示方法
2014/09/26 Javascript
js 通过cookie实现刷新不变化树形菜单
2014/10/30 Javascript
js实现大转盘抽奖游戏实例
2015/06/24 Javascript
jquery实用技巧之输入框提示语句
2016/07/28 Javascript
mui框架移动开发初体验详解
2017/10/11 Javascript
react-native-video实现视频全屏播放的方法
2018/03/19 Javascript
vue中$refs的用法及作用详解
2018/04/24 Javascript
JavaScript笛卡尔积超简单实现算法示例
2018/07/30 Javascript
element-ui table span-method(行合并)的实现代码
2018/12/20 Javascript
35个最好用的Vue开源库(史上最全)
2019/01/03 Javascript
基于vue实现探探滑动组件功能
2020/05/29 Javascript
浅谈Ant Design Pro 菜单自定义 icon
2020/11/17 Javascript
[27:02]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS LGD第三场
2014/05/24 DOTA
[01:05:56]2018DOTA2亚洲邀请赛3月29日 小组赛A组 Newbee VS VG
2018/03/30 DOTA
让 python 命令行也可以自动补全
2014/11/30 Python
python控制windows剪贴板,向剪贴板中写入图片的实例
2018/05/31 Python
python设置值及NaN值处理方法
2018/07/03 Python
Python代码实现删除一个list里面重复元素的方法
2019/04/02 Python
python实现桌面托盘气泡提示
2019/07/29 Python
Python openpyxl模块原理及用法解析
2020/01/19 Python
浅谈python中频繁的print到底能浪费多长时间
2020/02/21 Python
python 函数嵌套及多函数共同运行知识点讲解
2020/03/03 Python
联想德国官网:Lenovo Germany
2018/07/04 全球购物
中国汽车租赁行业头部企业:一嗨租车
2019/05/16 全球购物
资生堂英国官网:Shiseido英国
2020/12/30 全球购物
关于车尾的标语大全
2015/08/11 职场文书
开学随笔
2015/08/15 职场文书
浪漫婚礼主持词开场白
2015/11/24 职场文书
Java内存模型之happens-before概念详解
2021/06/13 Java/Android