Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    22

    Messaggio d'avviso per link esterni

    Salve a tutti.

    Non sono PER NIENTE esperto di Javascript e per questo necessito del vostro aiuto.
    Per il mio sito utilizzo jQuery(http://jquery.com/) e molti suoi plugin tra cui jQuery UI(http://jqueryui.com/).

    Vorrei integrare nel mio sito un JS che, ogni volta che un utente clicca su un link, verifica se tale link rimanda ad un dominio esterno. Se si, visualizza un messaggio di avvertimento (questo sono in grado di farlo io con jQuery UI.). Ma non so da che parte prendere per verificare se tale link è esterno o è interno, e non so come fare a far si che la verifica venga fatta automaticamente SENZA chiamare la funzione JS tramite onClick="" nel codice HTML.

    Insomma, sono preso proprio male. Qualcuno mi aiuta?

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    22

    Re: Messaggio d'avviso per link esterni

    Vi prego, aiutatemi!

  3. #3
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    per esternare disperazione aspetta almeno un giorno dal messaggio precedente!

    se i link interni non sono mai assoluti solo quelli esterni lo saranno, quindi dovrebbe bastarti
    codice:
      $(document).ready(function(){
    	$('a[href^=http://]').click(function(){alert('esterno');return false})
      });

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    22
    Grazie mille della risposta, gentilissimo.

    1 - Ma questa funzione non viene eseguita automaticamente ogni volta che un utente clicca su un link.. o sbaglio? :master:

    2 - ..e se i link interni non fossero tutti relativi? non c'è un modo per ottenere il dominio corrente dalla barra dell'indirizzo e confrontarlo con quello a cui si deve essere reindirizzati?

    Se rispondere alla seconda domanda è troppo lungo vedo di rendere tutti i link interni relativi, ma mi servirebbe la risposta alla prima domanda!

    Grazie mille, Lorenzo

  5. #5
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    questo per coprire anche eventuali link interni ma assoluti
    codice:
      $(document).ready(function(){
    	$('a[href^=http://]').not("[href^=http://"+location.hostname+"]").click(function(){alert('esterno');return false})
      });

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    22
    stupendo grazie mille!
    e la funzione viene eseguita automaticamente ogni qualvolta un link viene premuto?

    ..chiedo scusa per la mia grandissima ignoranza in JS, Lorenzo

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    22
    ma scusatemi.. questi JS mi stanno facendo sclerare..
    QUALCUNO GENTILMENTE MI DICE DOVE SBAGLIO?

    Quello che voglio è che quando qualcuno clicca sul link, se tale link è esterno mi viene visualizzato il messaggio, altrimenti rimanda al link. Non deve esserci nessun onclick="" tra i tag <a> e </a>.

    codice:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" >
    
    <head>
        <title>Link esterni</title>
    <script type="text/javascript" src="jQuery-1.3.2.js">
    <script type="text/javascript">
        $(document).ready(function(){
            $('a[href^=http://]').not("[href^=http://"+location.hostname+"]").click(function(){
            alert('Esterno');
            return false
            })
        });
    </script>
    </head>
    
    <body>
    Google (Link esterno)
    </body>
    
    </html>

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    22
    ..nessun aiuto?

  9. #9
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    intanto se chiudi con </script> lo <script> dove includi jquery forse puoi iniziarla ad usare

    poi, se a quel documento accedi via web server, mi risulta funzionare
    perche', per escludere come hai chiesto i link interni assoluti, lo script deve considerare un generico hostname, che un file in locale ha solo se vi si accede via web server locale (localhost)

  10. #10
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    22
    Ok, apparte il tag che mi sono scordato
    ..i link INTERNI ASSOLUTI me li riconosce come esterni!
    Guarda qua, l'ho caricato su Altervista:
    http://bit.ly/37bqTd

    primi due link (esterno ed interno) tutto ok, ultimo (interno assoluto) lo riconosce come esterno.
    Sai dirmi perchè?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.