Come attivare l'evento alla prima visita del sito Web utilizzando solo jQuery?
Domanda
Ciao, vorrei che la navigazione sul mio sito web si dissolvesse quando si visita il mio sito web e rimanesse presente (es.non svanire nuovamente) quando si visitano altre pagine del sito.
Il modo migliore per raggiungere questo obiettivo sarebbe dire a jQuery di ignorare la dissolvenza in effetto se si visita dallo stesso dominio?Se sì, qualcuno può dirmi come scriverei questo?
Molte grazie, Gavin
Soluzione
Un modo semplice per farlo senza cookie è utilizzare la proprietà Document.referrer.
if ( document.referrer == null || document.referrer.indexOf(window.location.hostname) < 0 ) {
// Your code here
}
Essenzialmente stiamo solo controllando per vedere la pagina che l'utente era prima non era nulla (avevano aperto una nuova finestra del browser) o non si trovava sullo stesso dominio della pagina corrente.
Altri suggerimenti
Non è possibile garantire che un utente disponga dei cookie attivati affinché questa soluzione funzioni.Dovrai prima aggiungere un controllo per vedere se i cookie sono attivati prima dell'implementazione.Puoi verificare se i cookie sono attivati utilizzando a metodo come questo.
var cookieName = 'yourcookiename';
$(function() {
checkCookie();
});
function checkCookie() {
if (document.cookie.length > 0 && document.cookie.indexOf(cookieName + '=') != -1) {
// do nothing, cookie already sent
} else {
// handle jQuery animation
// set the cookie to show user has already visited
document.cookie = cookieName + "=1";
}
}
L'unico modo che vedo per sapere se questo è il primo accesso di un utente è la presenza di un set di cookie dal tuo sito.
Questo ovviamente non è affidabile, in quanto l'utente potrebbe aver disattivato i cookie o averli cancellati.
Il tuo cookie verrebbe recuperato nel codice lato server e quindi scritto (ad esempio) in una variabile nascosta HTML, accessibile da JavaScript/JQuery.
Le specifiche del codice del server dipendono dalla lingua del server.
Potresti usare i cookie. Vedere: http://plugins.jquery.com/project/cookie