JavaScript 实现多浏览器兼容的设为首页与加入收藏功能
作者:像素猫时间:2026-10-26 05:10:54浏览:586
本文提供一段完整的 JavaScript 代码,用于实现网页的设为首页与加入收藏功能。该方案通过 try-catch 机制分别处理 IE 的 window.external 和 Firefox 的 window.sidebar 接口,并针对 Netscape 等旧版浏览器提供了通过修改配置文件实现设为首页的降级方案,确保在不同浏览器环境下具备较好的兼容性。
多浏览器兼容的设为首页与加入收藏代码实现
代码实现如下:
具体代码如下:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>无标题页</title>
<script language="javascript" type="text/javascript">
function AddFavorite(sURL, sTitle)
{
try
{
window.external.addFavorite(sURL, sTitle);
}
catch (e)
{
try
{
window.sidebar.addPanel(sTitle, sURL, "");
}
catch (e)
{
alert("加入收藏失败,请使用Ctrl+D进行添加");
}
}
}
function SetHome(obj,vrl){
try{
obj.style.behavior='url(#default#homepage)';obj.setHomePage(vrl);
}
catch(e){
if(window.netscape) {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPCONNECT");
}
catch (e) {
alert("此操作被浏览器拒绝!\n请在浏览器地址栏输入“about:config”并回车\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',vrl);
}
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<a onclick="AddFavorite(window.location,document.title)" style="cursor:pointer">加入收藏</a>
<a onclick="SetHome(this,window.location)" style="cursor:pointer">设为首页</a>
</form>
</body>
</html>作者最新文章
vtk.js 渲染窗口黑屏或无内容显示的常见原因及排查
2026-11-05 17:30:30
js-cookie 安装与基础用法:set、get、remove 详解
2026-11-05 16:35:06
适合JavaScript初学者的实战项目:制作简易待办事项列表
2026-11-05 16:17:07
JS打开新标签页时怎么通过URL传递参数
2026-11-05 12:21:08
sigma.js 自定义节点样式:设置颜色、大小及标签显示的技巧
2026-11-05 09:55:00
