跨浏览器书签/添加到collections夹JavaScript

是否有任何跨浏览器的书签/添加到使用JavaScript的collections夹。

search了一些列表,但没有任何工作。 你可以请任何build议吗?

jQuery版本

JavaScript(从我在某人的网站上find的脚本修改过 – 我再也找不到这个网站了,所以我不能给这个人信用):

$(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书签file://...

如果你需要一个更完整的脚本,你可以随时从这个页面购买一个 (不,我不隶属于该网站…大声笑)。

我想不。 书签/collections夹应该在用户的控制之下,想象一下,如果你访问过的任何网站可以插入自己的书签只有一些JavaScript。

 function bookmark(title, url) { if(document.all) { // ie window.external.AddFavorite(url, title); } else 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; } } 

我用这个&在IE,FF,Netscape中很好用。 Chrome,Opera和Safari不支持它!

如何使用像ShareThis或AddThis的下拉式解决scheme? 他们有类似的function,所以很有可能他们已经解决了这个问题。

AddThis的代码有一个巨大的if / else浏览器版本fork来保存collections夹,但是大多数分支都以提示用户自己手动添加collections夹的方式结束,所以我认为没有这种纯粹的JavaScript实现存在。

否则,如果你只需要支持IE和Firefox,你就有IE的window.externalAddFavorite()和Mozilla的window.sidebar.addPanel()。