这篇文章主要介绍了如何通过原生 js 实现设为首页并兼容 ie、火狐和谷歌, 需要的朋友可以参考下
Javascript 是一种由 Netscape 的 LiveScript 发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如 Perl,遗留的速度问题,为客户提供更流畅的浏览效果。
原生 js 编写,兼容 ie,火狐和谷歌。
完整代码:
- <script type="text/javascript">
- //设为首页 www.phperz.com
- 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.phperz.com
- 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,'http://www.phperz.com');">
- 设为首页
- </a>
- <div class="text text2">
- <a href="javascript:void(0);" onclick="AddFavorite('phperz','http://www.phperz.com')">
- 收 藏 本 站
- </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>
来源: