我正在使用以下JavaScript代码:
<script language="JavaScript1.2" type="text/javascript">
function CreateBookmarkLink(title, url) {
if (window.sidebar) {
window.sidebar.addPanel(title, url,"");
} else if( window.external ) {
window.external.AddFavorite( url, title); }
else if(window.opera && window.print) {
return true; }
}
</script>
这将为Firefox和IE创建一个书签。但Firefox的链接将显示在浏览器的侧面板中,而不是显示在主屏幕中。我个人认为这非常烦人,我正在寻找更好的解决方案。当然可以手动编辑书签以使其不显示在侧面板中,但这需要额外的步骤。我只是希望能够让人们为一个页面添加书签(在URL中有很多GET信息用于构建某个方案),这很简单。
我担心Firefox可能无法在主屏幕中显示该页面(因为谷歌搜索这个主题几乎没有任何值得使用的东西),但我可能错过了一些东西。如果有人知道这是否可行,或者是否有解决方法,我很乐意听到。
答案 0 :(得分:7)
对于Firefox,无需为脚本中的书签设置任何JavaScript,只有标题和 rel =“sidebar”的锚标记可以执行此功能< / p>
<a href="http://www.google.com" title="Google" rel="sidebar">Bookmark This Page</a>
我在FF9上测试了它,并且工作正常。
当您点击链接时,Firefox将打开一个对话框新书签,如果您不想在侧栏上加载此书签,请取消选中在侧边栏中加载此书签来自对话框。
答案 1 :(得分:4)
我认为这是Firefox的唯一解决方案......我对该操作有更好的功能,它甚至可以用于Opera,并为其他“不受支持的”浏览器显示消息。
<script type="text/javascript">
function addBookmark(url,name){
if(window.sidebar && window.sidebar.addPanel) {
window.sidebar.addPanel(name,url,''); //obsolete from FF 23.
} else if(window.opera && window.print) {
var e=document.createElement('a');
e.setAttribute('href',url);
e.setAttribute('title',name);
e.setAttribute('rel','sidebar');
e.click();
} else if(window.external) {
try {
window.external.AddFavorite(url,name);
}
catch(e){}
}
else
alert("To add our website to your bookmarks use CTRL+D on Windows and Linux and Command+D on the Mac.");
}
</script>
答案 2 :(得分:0)
你有
的特例if (window.sidebar)
然后是'else'的分支 - 在第一个分支中不会firefox登陆,因此只添加面板?
答案 3 :(得分:0)
Hojou,
这似乎是为Firefox添加书签的唯一方法。因此,FF需要在第一个分支中着陆才能发生任何事情。我用谷歌搜索了一些,但我真的明白这不可能在FF中正确解决......