Domanda

nel mio file js voglio essere in grado di caricare una "splash screen" in una nuova applicazione d'aria im sviluppo. Allo stato attuale quando chiamo la schermata iniziale si apre e si chiude bene, ma la sua quando i renderlo impostare un cookie che pretende molto correre a tutti. Si prega di aiuto ...

    cookieSplash();

function cookieSplash(){
    var cookieSplash = $.cookie('loadSplash');
    if (cookieSplash == "true") {
        splash();
    };
    if (cookieSplash == "false") {
        loadApplication();
    };
}
function splash(){
    $("#viewport").append('<div id="splash"><img id="splash-close" src="/images/splash-logo.png" alt="click to close"></div>');
    $("#splash").click(function() {
        // Act on the event
        $("#splash").fadeOut("slow");
        $("#jettison").fadeIn("fast");
        $.cookie("loadSplash", "false");
    });
}
function loadApplication(){
    $("#jettison").fadeIn("fast");
}

Si prega di aiutarmi

È stato utile?

Soluzione

Questa prima funzione dovrebbe essere diverso. Un cookie di disinserimento non si tradurrà in valori come "vero" o "falso" (che, come ha osservato @rochal sono stringhe, non booleani), sarà nullo. Inoltre, se il cookie è tenere traccia di se o non la schermata iniziale ha bisogno di essere dimostrato, come sarà hanno alcun valore a tutti in un primo momento?

function cookieSplash(){
  var cookieSplash = $.cookie('loadSplash');
  if (cookieSplash)
      splash();
  else
      loadApplication();
}

function splash() {
  $("#viewport").append('<div id="splash"><img id="splash-close" src="/images/splash-logo.png" alt="click to close"></div>');
  $("#splash").click(function() {
      // Act on the event
      $("#splash").fadeOut("slow");
      $("#jettison").fadeIn("fast");
      $.cookie("loadSplash", "done");
  });
}

Altri suggerimenti

Assicurati di aver incluso jquery_cookie.js. Se avete, allora io suggerirei di usare Firefox / Firebug e controllare la console per gli errori javascript.

pagina di prova per i biscotti jQuery , si imposta il cookie scorrettamente. Utilizzare questo esempio di sintassi:

Per impostare:

$.cookie("MySplashCookie", true, { expires: 10 })

Per leggere:

$.cookie("MySplashCookie")

Nota:

"true" != true
"false" != false

assicurarsi che si sta salvando i tipi corretti troppo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top