最近发现ff下不能正常执行原本在IE里可以使用的加入收藏和设为首页功能。下面贴出修改后可以运行的代码。
加入收藏
function
AddFavorite(sURL, sTitle)
... {
try
...{
window.external.addFavorite(sURL, sTitle);
}
catch (e)
...{
try
...{
window.sidebar.addPanel(sTitle, sURL, "");
}
catch (e)
...{
alert("加入收藏失败,请使用Ctrl+D进行添加");
}
}
}
... {
try
...{
window.external.addFavorite(sURL, sTitle);
}
catch (e)
...{
try
...{
window.sidebar.addPanel(sTitle, sURL, "");
}
catch (e)
...{
alert("加入收藏失败,请使用Ctrl+D进行添加");
}
}
}
使用方法:<a onclick="AddFavorite(window.location,document.title)">加入收藏</a>
设为首页
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("此操作被浏览器拒绝!请在浏览器地址栏输入“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',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("此操作被浏览器拒绝!请在浏览器地址栏输入“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',vrl);
}
}
}
使用方法:<a onclick="SetHome(this,window.location)">设为首页</a>
注意上面一行那个this.