Newsgroup: it.comp.lang.javascript
Titolo: Ogni link in nuova pagina

ciao a tutto il ng
qualcuno ha il codice per aprire ogni nuovo link, indistintamente,
all'interno di una nuova pagina (possibilmente non popup) ?


Questo mi pare funzioni (l'ho testato solo su FF, per IE probabilmente
devi mettere mano alla gestione dell'evento), ma tieni presente che è
stato concepito da uno che programma JavaScript da due settimane e che
ha pure dormito poco :-P
Se Javascript non e' abilitato, il sito resta normalmente navigabile.
Non fa uso dell'attributo deprecato "target".
Se ti serve aprire il link in background, dimmelo, che vado a
curiosare come lo fa Gmail.
Ciao
--
Enos
/******************************/
window.addEventListener("load", function() {
    var links = document.getElementsByTagName("a");
    for (var i=0; i<links.length; i++) {
        links[i].addEventListener("click", newWindow, true);
    }
}, true);
function newWindow(event) {
    window.open(this.getAttribute("href"),"_blank");
    /* controllare compatibilita' IE: */
    event.preventDefault();
    return false;
}
/******************************/

 all'interno di una nuova pagina (possibilmente non popup) ?
Questo mi pare funzioni (l'ho testato solo su FF, per IE probabilmente
devi mettere mano alla gestione dell'evento), ma tieni presente che �
stato concepito da uno che programma JavaScript da due settimane e che
ha pure dormito poco :-P
Se Javascript non e' abilitato, il sito resta normalmente navigabile.
Non fa uso dell'attributo deprecato "target".
Se ti serve aprire il link in background, dimmelo, che vado a
curiosare come lo fa Gmail.
Ciao
--
Enos
/******************************/
window.addEventListener("load", function() {
    var links = document.getElementsByTagName("a");
    for (var i=0; i<links.length; i++) {
        links[i].addEventListener("click", newWindow, true);
    }
}, true);
function newWindow(event) {
    window.open(this.getAttribute("href"),"_blank");
    /* controllare compatibilita' IE: */
    event.preventDefault();
    return false;
}
/******************************/
"Bill Bao" wrote:
Ti anticipo che per quello che lo devo usare non funziona.
Io devo inserire un javascript nella piattaforma Blogger di Google, e 
precisamente in Formattazione/Modello Post,
per fare in modo appunto, che qualsiasi link esterno io vada a pubblicare, 
in automatico si prende il comando
di aprirlo in una nuova pagina, senza quindi modificare l'html dell' <a href 
per aggiungere il target="_blank"
Vado sul sicuro sul fatto che mi serva un javascript in quanto ho letto una 
risposta autorevole sulla 'guida blogger',
ma chi la ha inserita non ha completato l'intervento pubblicando il codice 
in questione.

 per aggiungere il target="_blank"
Funziona, basta qualche adattamento.
Stanotte ne ho perfezionata e testata una versione molto elegante
apposta per Blogger. Appena riesco a farla funzionare anche con
Explorer (presumo domani), decido se renderla pubblica.
--
Enos

 > per aggiungere il target="_blank"
Fatto:    
http://enos.altervista.org/pub/scripts/blogger.txt
Note:
- testato su 
http://tribute76.blogspot.com/
 con IE 6 - 8 e FF 1.5 -
3 ;
- è il browser che decide se aprire una nuova finestra o un nuovo tab;
- funziona (intenzionalmente) solo per i link contenuti nei nuovi
post;
- puoi distribuirlo, ma lascia intatto il mio riferimento.
Saluti
--
Enos