代码之家  ›  专栏  ›  技术社区  ›  webnoob

使用php脚本的flash loadvars

  •  1
  • webnoob  · 技术社区  · 16 年前

    我有一个Flash电影,我需要从一个PHP脚本中读取一个值,以便设置它从哪个帧开始,我使用以下代码:

    if (loaded == total) {
            var lvContent = new LoadVars();
            lvContent.load("http://MY URL/Includes/getID.php");             
            trace("Who: " + lvContent.pageID);       
            lvContent.onLoad = function() {
                if (lvContent.pageID != "29") { //If it's the home page then play the full animation. If not .. don't.
                    _root.gotoAndPlay(2);
    
                }else{
                    _root.gotoAndPlay(90);
                }
            }      
        }
    

    问题是这不起作用-它不会进入加载事件。如果手动运行PHP,则会得到“&pageid=29”。如果我在本地调试它,我会在跟踪输出窗口中得到“who:undefined”。从我读过的所有示例来看,我似乎做得很正确,但它似乎不起作用。

    flash:cs5使用actionscript 2.0

    有人能看看,告诉我哪里出了问题吗?

    事先谢谢。

    2 回复  |  直到 16 年前
        1
  •  3
  •   Pekka    16 年前

    你正在定义 onLoad 事件 之后 正在加载内容。我认为这行不通。

    尝试

    if (loaded == total) {
            var lvContent = new LoadVars();
    
            lvContent.onLoad = function() {
                if (lvContent.pageID != "29") { 
            //If it's the home page then play the full animation. If not .. don't.
                    _root.gotoAndPlay(2);
    
                }else{
                    _root.gotoAndPlay(90);
                }
            }    
            lvContent.load("http://MY URL/Includes/getID.php");             
            trace("Who: " + lvContent.pageID);        
        }
    
        2
  •  3
  •   Amarghosh    16 年前

    在加载pageid之前,您正在跟踪它;请尝试此操作

    var lvContent = new LoadVars();
    lvContent.onLoad = function(success:Boolean) {
      if(!success) {
        trace("Failed to load");
        return;
      }
      trace("Who: " + lvContent.pageID);//trace from the onLoad handler
      if (lvContent.pageID != "29") 
        _root.gotoAndPlay(2);
      else
        _root.gotoAndPlay(90);
    }
    lvContent.load("http://MY URL/Includes/getID.php");
    
    推荐文章