原生js编写设为首页兼容ie、火狐和谷歌

 更新时间:2014年06月05日 17:18:03   投稿:whsnow  
这篇文章主要介绍了如何通过原生js实现设为首页并兼容ie、火狐和谷歌,需要的朋友可以参考下

原生 js 编写,兼容 ie,火狐和谷歌。

完整代码:

<script type="text/javascript">
//设为首页 www.jb51.net
function SetHome(obj,url){
  try{
    obj.style.behavior='url(#default#homepage)';
    obj.setHomePage(url);
  }catch(e){
    if(window.netscape){
     try{
       netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
     }catch(e){
       alert("抱歉,此操作被浏览器拒绝!\n\n请在浏览器地址栏输入“about:config”并回车然后将[signed.applets.codebase_principal_support]设置为'true'");
     }
    }else{
    alert("抱歉,您所使用的浏览器无法完成此操作。\n\n您需要手动将【"+url+"】设置为首页。");
    }
 }
}
 
//收藏本站 www.jb51.net
function AddFavorite(title, url) {
 try {
   window.external.addFavorite(url, title);
 }
catch (e) {
   try {
    window.sidebar.addPanel(title, url, "");
  }
   catch (e) {
     alert("抱歉,您所使用的浏览器无法完成此操作。\n\n加入收藏失败,请进入新网站后使用Ctrl+D进行添加");
   }
 }
}
</script>
<a href="javascript:void(0);" onclick="SetHome(this,'https://www.jb51.net');">设为首页</a>
<div class="text text2"><a href="javascript:void(0);" onclick="AddFavorite('脚本之家','https://www.jb51.net')">收 藏 本 站</a>

下面的可以参考:

函数如下:

复制代码 代码如下:

function setHome(obj,url){
try{
obj.style.behavior = 'url(#default#homepage)';
obj.setHomePage(url);
}catch(e){
if(window.netscape){
try{
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
}catch(e){
alert('抱歉,此操作被浏览器拒绝!\n\n请在浏览器地址栏输入“about:config”并回车\n\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',url);
}else{
alert('抱歉,您所使用的浏览器无法完成此操作。\n\n您需要手动将【' + url + '】设置为首页。');
}
}
}

使用方法:
复制代码 代码如下:

<!DOCTYPE HTML>
<html lang="en">
<head>
<meta charset="utf-8"/>
<title>设为首页</title>
</head>
<body>
<a href="javascript:;" onclick="setHome(this,window.location);">设为首页</a>
</body>
</html>

相关文章

  • 解决微信小程序中转换时间格式IOS不兼容的问题

    解决微信小程序中转换时间格式IOS不兼容的问题

    今天小编就为大家分享一篇关于解决微信小程序中转换时间格式IOS不兼容的问题,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • js用Date对象的setDate()函数对日期进行加减操作

    js用Date对象的setDate()函数对日期进行加减操作

    在某个日期上加减天数来说,其实只要调用Date对象的setDate()函数就可以了,具体方法如下
    2014-09-09
  • 解析dom中的children对象数组元素firstChild,lastChild的使用

    解析dom中的children对象数组元素firstChild,lastChild的使用

    以下是对dom中的children对象数组元素firstChild,lastChild的使用进行了详细的分析介绍,需要的朋友可以参考下
    2013-07-07
  • 关于微信小程序登录的那些事

    关于微信小程序登录的那些事

    这篇文章主要给大家介绍了关于微信小程序登录的那些事,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-01-01
  • 对js eval()函数的一些见解

    对js eval()函数的一些见解

    下面小编就为大家带来一篇对js eval()函数的一些见解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-08-08
  • js如何实现元素曝光上报

    js如何实现元素曝光上报

    这篇文章主要介绍了js如何实现元素曝光上报,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • 前端数组去重面试我会问这3个小问题

    前端数组去重面试我会问这3个小问题

    数组去重在我们的前端的面试过程中经过会遇到,有一些人可能会想到一两种,但是数据去重的算法真的太多了,下面这篇文章主要给大家介绍了关于前端数组去重面试3个小问题的相关资料,需要的朋友可以参考下
    2023-01-01
  • 基于bootstrop常用类总结(推荐)

    基于bootstrop常用类总结(推荐)

    下面小编就为大家带来一篇基于bootstrop常用类总结(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • JS设置随机出现2个数字的实例代码

    JS设置随机出现2个数字的实例代码

    这篇文章给大家分享基于js设置随机出现2个数字的实例代码,在文章下面给分享js产生随机数的几个用法介绍,感兴趣的朋友一起看看吧
    2017-07-07
  • vscode 对 typescript代码调试的步骤

    vscode 对 typescript代码调试的步骤

    在VS Code中,要对 TypeScript代码进行调试,需要先编译 TypeScript 代码为JavaScript代码,这篇文章主要介绍了vscode对typescript代码调试的方法,需要的朋友可以参考下
    2023-03-03

最新评论