0

在我的 js 文件中,我希望能够在正在开发的新空气应用程序中加载“启动画面”。目前,当我调用启动屏幕时,它可以正常打开和关闭,但是当我设置它时它根本不运行。请帮忙...

    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");
}

请帮帮我

4

3 回答 3

0

确保您已包含jquery_cookie.js. 如果你有,那么我建议使用 Firefox/Firebug 并检查控制台是否有 javascript 错误。

于 2010-03-18T12:11:16.117 回答
0

根据jQuery cookie 的演示页面,您正在错误地设置 cookie。使用此示例语法:

设置:

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

读书:

$.cookie("MySplashCookie")

笔记:

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

确保您也保存了正确的类型。

于 2010-03-18T12:19:44.707 回答
0

第一个功能应该不同。未设置的 cookie 不会产生诸如“true”或“false”之类的值(正如@rochal 指出的那样,它们是字符串,而不是布尔值),它将为空。此外,如果您的 cookie 正在跟踪是否需要显示启动画面,那么它一开始会有什么价值呢?

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");
  });
}
于 2010-03-18T12:49:14.450 回答