兼容IE、Chrome及Firefox的设为首页、收藏与保存桌面JS实现
作者:纸飞机时间:2026-10-28 17:51:58浏览:289
本文提供一段兼容IE、Chrome和Firefox的JavaScript代码,实现设为首页、收藏本站及保存到桌面功能。代码通过检测浏览器类型调用不同接口,如IE的ActiveXObject或DOM行为,Firefox的sidebar.addPanel,并处理权限异常。附带HTML调用示例,适用于传统Web开发场景,需注意现代浏览器对自动设置首页和收藏的限制。
多浏览器兼容的首页与收藏功能实现
本文分享一段用于实现设为首页、收藏本站以及保存到桌面功能的JavaScript代码,具有较高的实用价值。
具体代码实现如下:
<script type="text/javascript">
// 设为首页功能
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 + "】设置为首页。");
}
}
}
// 收藏本站功能
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进行添加");
}
}
}
// 保存到桌面功能
function toDesktop(sUrl, sName) {
try {
var WshShell = new ActiveXObject("WScript.Shell");
var oUrlLink = WshShell.CreateShortcut(WshShell.SpecialFolders("Desktop") + "\\" + sName + ".url");
oUrlLink.TargetPath = sUrl;
oUrlLink.Save();
}
} catch (e) {
alert("当前IE安全级别不允许操作!");
}
}
</script>
HTML页面调用示例
页面调用方式如下:
HTML调用代码示例:
<a href="javascript:void(0);" onclick="SetHome(this,'http://www.xyz.com');">设为首页</a>
<a href="javascript:void(0);" onclick="AddFavorite('我的网站',location.href)">收藏本站</a>
<a href="javascript:void(0);" onclick=" toDesktop(location.href,'我的网站')">保存到桌面</a>
该代码源自实际项目应用,可直接使用。
作者最新文章
JS动态构建复杂嵌套JSON对象的方法
2026-11-05 15:41:52
JS负数取余为什么是负数?详解余数与模运算区别
2026-11-05 13:34:41
JS 解压出现乱码或报错怎么解决?
2026-11-05 12:32:38
JS 中 startsWith、indexOf 与正则判断字符串前缀的对比
2026-11-04 22:19:43
JS解析Excel后怎么将数据转换为JSON格式
2026-11-04 20:58:28
