这个问题在这里已有答案:
是否有任何跨浏览器书签/使用JavaScript添加到收藏夹。
搜索了一些列表但没有一个正在运行。你能建议吗?
jQuery版本
JavaScript(从我在某人的网站上找到的脚本修改 - 我再也找不到该网站,所以我无法给予该人信用):
$(document).ready(function() {
$("#bookmarkme").click(function() {
if (window.sidebar) { // Mozilla Firefox Bookmark
window.sidebar.addPanel(location.href,document.title,"");
} else if(window.external) { // IE Favorite
window.external.AddFavorite(location.href,document.title); }
else if(window.opera && window.print) { // Opera Hotlist
this.title=document.title;
return true;
}
});
});
HTML:
<a id="bookmarkme" href="#" rel="sidebar" title="bookmark this page">Bookmark This Page</a>
如果你不在服务器上运行它,IE将显示错误(当它作为file://...
查看时,它不允许通过JavaScript使用JavaScript书签。
如果你需要一个更完整的脚本,你可以随时buy one from this page(不,我不隶属于那个网站......大声笑)。
function bookmark(title, url)
{
if (window.sidebar)
{// Firefox
window.sidebar.addPanel(title, url, '');
}
else if (window.opera && window.print)
{// Opera
var elem = document.createElement('a');
elem.setAttribute('href',url);
elem.setAttribute('title',title);
elem.setAttribute('rel','sidebar');
elem.click();//this.title=document.title;
}
else if (document.all)
{// ie
window.external.AddFavorite(url, title);
}
}
我用过它,在IE,FF,Netscape中运行得很好。 Chrome,Opera和Safari不支持它!
我在想不。书签/收藏夹应该在用户的控制之下,想象一下,如果您访问过的任何网站只需要一些javascript就可以将自己插入到书签中。
如何使用像ShareThis或AddThis这样的插入式解决方案?它们具有类似的功能,因此它们很可能已经解决了这个问题。
AddThis的代码有一个巨大的if / else浏览器版本分叉用于保存收藏夹,但大多数分支以提示用户自己手动添加收藏夹结束,所以我认为没有这样的纯JavaScript实现存在。
否则,如果你只需要支持IE和Firefox,你就有IE的window.externalAddFavorite( )和Mozilla的window.sidebar.addPanel( ).