Ciao a tutti!!
Finalmente ho trovato una soluzione per portare la funzione "aggiungi ai preferiti" compatibile con i browser principali (Firefox, IE, Opera) in un file esterno, ecco il codice:
nella pagina HTML oltre a mettere l'inclusione del file JS esterno nell'HEAD bisogna scrivere questo
codice:
<script type="text/javascript">
var titolo = document.title;
var url = window.location;
preferiti(titolo, url);</script>
il codice dello script è il seguente:
codice:
function preferiti(titolo,url)
{
if( window.sidebar && window.sidebar.addPanel ) {
if (navigator.userAgent.lastIndexOf("Netscape") != -1) {
document.write( '<a href="javascript:window.sidebar.addPanel( titolo, url, \'\' );">Aggiungi ai preferiti<\/a>' );
}
else{
document.write( '<a href="javascript:window.sidebar.addPanel( titolo, url, \'\' );">Aggiungi ai preferiti<\/a>' );
}
}
if( window.opera && window.print ) {
var a="<a title=";
var b=document.title;
var c="href=";
var d=window.location;
document.write( a+ '"'+ b+ '"' +' rel="sidebar" '+ c+ '"'+ d+ '"' + '>Aggiungi ai preferiti<\/a>');
} else if( window.external && ( navigator.platform == 'Win32' || ( window.ScriptEngine && ScriptEngine().indexOf('InScript') + 1 ) ) ) {
document.write( '<a href="javascript:addbookmark()">Aggiungi ai preferiti' + ( ( navigator.platform == 'Win32' ) ? '' : 'Hotlist entry' ) + '<\/a>' );
}
}
function addbookmark(){
var bookmarkurl=window.location;
var bookmarktitle=document.title;
if (document.all)
window.external.AddFavorite(bookmarkurl,bookmarktitle)
}
Sicuramente il codice si può migliorare, io non me ne intendo un granchè di JS....
Questo piccolo script (realizzato partendo da quello di cavicchiandrea) risente ancora del problema su firefox che il bookmark viene aperto nella barra laterale, se qualcuno trovasse la soluzione......
Ciao