Segnalibro cross-browser / aggiungi ai preferiti JavaScript

C’è un segnalibro cross-browser / aggiungi ai preferiti utilizzando JavaScript.

Ho cercato un elenco ma nessuno funziona. Potete suggerire qualche suggerimento?

Versione jQuery

JavaScript (modificato da uno script che ho trovato sul sito di qualcuno – Non riesco a trovare di nuovo il sito, quindi non posso dare credito alla persona):

$(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:

 Bookmark This Page 

IE mostrerà un errore se non lo si esegue da un server (non consente i segnalibri JavaScript tramite JavaScript quando lo si visualizza come un file://...

Se hai bisogno di uno script più completo, puoi sempre acquistarne uno da questa pagina (No, non sono affiliato con quel sito … LOL).

Sto pensando no. I segnalibri / i preferiti dovrebbero essere sotto il controllo dell’utente, immagina se qualsiasi sito che hai visitato possa inserirsi nei tuoi segnalibri con solo qualche 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; } } 

Ho usato questo e funziona alla grande in IE, FF, Netscape. Chrome, Opera e Safari non lo supportano!

Che ne dici di usare una soluzione drop-in come ShareThis o AddThis ? Hanno funzionalità simili, quindi è ansible che abbiano già risolto il problema.

Il codice di AddThis ha un’enorme fork di versione if / else per salvare i preferiti, sebbene, con la maggior parte dei rami che terminano nel richiedere all’utente di aggiungere manualmente i preferiti, quindi penso che non esista una implementazione JavaScript così pura.

Altrimenti, se hai solo bisogno di supportare IE e Firefox, hai IE window.externalAddFavorite () e Mozilla’s window.sidebar.addPanel ().