Notizie: puoi sempre seguire i nostri aggiornamenti su Twitter (@MozillaItalia) e Facebook (/MozillaItalia)

Autore Topic: <R> Aggiungi ai preferiti con Javascript  (Letto 10711 volte)

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline mackey

  • Post: 16
    • Matteo Chessa
<R> Aggiungi ai preferiti con Javascript
« Risposta #15 il: 26 Gennaio 2004 11:46:06 »
MA CHI SONOO!!! MA VIENIII!!!
non l'ho trovata da nessuna parte... l'ho fatta mediante indicazioni trovate qua e la...
Codice: [Seleziona]
function addFavorite(url,title) {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect")
var b = Components.classes["@mozilla.org/browser/bookmarks-service;1"].getService();
b = b.QueryInterface(Components.interfaces.nsIBookmarksService);
b.addBookmarkImmediately(url,title,0,null);
return true;
} catch(e) {
return false;
}
}


FUNZIONA ALLA GRANDE!

Offline jooliaan

  • Lazy Old Man
  • Post: 8532
    • BlogZilla
<R> Aggiungi ai preferiti con Javascript
« Risposta #16 il: 26 Gennaio 2004 13:04:39 »
Citazione da: mackey
MA CHI SONOO!!! MA VIENIII!!!
non l'ho trovata da nessuna parte... l'ho fatta mediante indicazioni trovate qua e la...
Codice: [Seleziona]
function addFavorite(url,title) {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect")
var b = Components.classes["@mozilla.org/browser/bookmarks-service;1"].getService();
b = b.QueryInterface(Components.interfaces.nsIBookmarksService);
b.addBookmarkImmediately(url,title,0,null);
return true;
} catch(e) {
return false;
}
}


FUNZIONA ALLA GRANDE!


COMPLIMENTI! :D
Ora te la faccio io una domanda, se fosse mai necessario, lo posso utilizzare anche io in un eventuale sito che mi sta frullando per la testa di mettere in piedi?

Ciao :)

Offline flod

  • Amministratore
  • Post: 15033
    • http://www.flod.org
<R> Aggiungi ai preferiti con Javascript
« Risposta #17 il: 26 Gennaio 2004 13:08:33 »
Provato e funziona con mozilla 1.5; l'unica cosa inquietante è l'avviso che ti esce
Codice: [Seleziona]

Uno script ha richiesto privilegi in UniversalXpConnect...

Dubito che un utente risponda di sì ad una domanda del genere; io stesso ho risposto di sì con un certo sospetto :wink:

Su Firbird esce lo stesso avviso ma non produce nessun effetto.

Offline mackey

  • Post: 16
    • Matteo Chessa
<R> Aggiungi ai preferiti con Javascript
« Risposta #18 il: 26 Gennaio 2004 13:42:06 »
rispondo ad entrambi:

COME NO! certo che lo puoi usare... ora faccio il codice crossbrowser e lo posto...

quell'avviso esce perchè l'utente deve accettare i privilegi per modificare qualche impostazione del browser...
cmq nel caso premi no entrerebbe nell'alternativa catch dove metterò il metodo addPanel...

ecco il codice completo (ora controllo se esiste qualcosa anche per Opera)
Codice: [Seleziona]
function addFavorite(url,title) {
if(!url) url = location.href;
if(!title) title = document.title || url.replace(/^(.+):\/\//,"").replace(/\/$/,"").replace(/\//g,"_");
if(typeof(window.external)!="undefined" && typeof(window.external.addFavorite)!="undefined") {
window.external.addFavorite(url,title);
return true;
}
else try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect")
var b = Components.classes["@mozilla.org/browser/bookmarks-service;1"].getService();
b = b.QueryInterface(Components.interfaces.nsIBookmarksService);
b.addBookmarkImmediately(url,title,0,null);
return true;
} catch(e) {
if(typeof(window.sidebar)!="undefined" && typeof(window.sidebar.addPanel)!="undefined") {
window.sidebar.addPanel(title,url,"");
return true;
}
else
return false;
}
}

0 Utenti e 1 Visitatore stanno visualizzando questo topic.