Flash CS5: AS3: странные ошибки XML?

#xml #flash #actionscript-3

#xml #flash #actionscript-3

Вопрос:

Я работал с одним из готовых шаблонов в CS5, с «расширенной презентацией слайд-шоу», внезапно я пошел, чтобы получить предварительный просмотр публикации, и он выдал целую кучу ошибок xml, с которыми я не знаком.

 SlidesMovieClip_2, Line 14  1104: invalid xml name
SlidesMovieClip_2, Line 253 1084: Syntax error: expecting xmltagendend before end of program.
SlidesMovieClip_2, Line 253 1100: Syntax error: XML does not have matching begin and end tags.
SlidesMovieClip_2, Line 253 1100: Syntax error: XML does not have matching begin and end tags.
SlidesMovieClip_2, Line 253 1100: Syntax error: XML does not have matching begin and end tags.
SlidesMovieClip_2, Line 253 1084: Syntax error: expecting rightparen before end of program.
SlidesMovieClip_2, Line 253 1084: Syntax error: expecting rightbrace before end of program.
SlidesMovieClip_2, Line 253 1073: Syntax error: expecting a catch or a finally clause.
  

Насколько я знаю, «SlideshowMovieClip_2» даже не существует? Я не уверен, что происходит, но я оставлю код, и, надеюсь, вы, ребята, сможете что-нибудь придумать!

код:

 import fl.transitions.*;

// USER CONFIG SETTINGS
var buttonsOn:Boolean = true; // true, false
var pageNumberOn:Boolean = true; // true, false
var transitionOn:Boolean = true; // true, false
var transitionType:String = "Fade"; // Blinds, Fade, Fly, Iris, Photo, PixelDissolve, Rotate, Squeeze, Wipe, Zoom, Random
// END USER CONFIG SETTINGS

// EVENTS
stage.addEventListener(KeyboardEvent.KEY_DOWN, fl_changeSlideKeyboard);
prev_btn.addEventListener(MouseEvent.CLICK, fl_prevSlideButton);
next_btn.addEventListener(MouseEvent.CLICK, fl_nextSlideButton);
function fl_changeSlideKeyboard(evt:KeyboardEvent):void
{
    if(evt.keyCode == 37) // LEFT
    {
        fl_prevSlide();
    }
    else if (evt.keyCode == 39 || evt.keyCode == 32) // RIGHT OR SPACE
    {
        fl_nextSlide();
    }
}
function fl_prevSlideButton(evt:MouseEvent):void
{
    fl_prevSlide();
}
function fl_nextSlideButton(evt:MouseEvent):void
{
    fl_nextSlide();
}
// END EVENTS

// FUNCTIONS AND LOGIC
function fl_prevSlide():void
{
    if(slides_mc.currentFrame > 1)
    {
        slides_mc.gotoAndStop(slides_mc.currentFrame-1);
        if(transitionOn == true)
        {
            fl_doTransition();
        }
        if(pageNumberOn == false)
        {
            slideNumber_txt.text = "";
        } else {
            slideNumber_txt.text = String(slides_mc.currentFrame   "/"   slides_mc.totalFrames);
        }
    }
}
function fl_nextSlide():void
{
    if(slides_mc.currentFrame < slides_mc.totalFrames)
    {
        slides_mc.gotoAndStop(slides_mc.currentFrame 1);
        if(transitionOn == true)
        {
            fl_doTransition();
        }
        if(pageNumberOn == false)
        {
            slideNumber_txt.text = "";
        } else {
            slideNumber_txt.text = String(slides_mc.currentFrame   "/"   slides_mc.totalFrames);
        }
    }
}
function fl_doTransition():void
{
    if(transitionType == "Blinds")
    {
        TransitionManager.start(slides_mc, {type:Blinds, direction:Transition.IN, duration:0.25});
    } else if (transitionType == "Fade")
    {
        TransitionManager.start(slides_mc, {type:Fade, direction:Transition.IN, duration:0.25});
    } else if (transitionType == "Fly")
    {
        TransitionManager.start(slides_mc, {type:Fly, direction:Transition.IN, duration:0.25});
    } else if (transitionType == "Iris")
    {
        TransitionManager.start(slides_mc, {type:Iris, direction:Transition.IN, duration:0.25});
    } else if (transitionType == "Photo")
    {
        TransitionManager.start(slides_mc, {type:Photo, direction:Transition.IN, duration:0.25});
    } else if (transitionType == "PixelDissolve")
    {
        TransitionManager.start(slides_mc, {type:PixelDissolve, direction:Transition.IN, duration:0.25});
    } else if (transitionType == "Rotate")
    {
        TransitionManager.start(slides_mc, {type:Rotate, direction:Transition.IN, duration:0.25});
    } else if (transitionType == "Squeeze")
    {
        TransitionManager.start(slides_mc, {type:Squeeze, direction:Transition.IN, duration:0.25});
    } else if (transitionType == "Wipe")
    {
        TransitionManager.start(slides_mc, {type:Wipe, direction:Transition.IN, duration:0.25});
    } else if (transitionType == "Zoom")
    {
        TransitionManager.start(slides_mc, {type:Zoom, direction:Transition.IN, duration:0.25});
    } else if (transitionType == "Random")
    {
        var randomNumber:Number = Math.round(Math.random()*9)   1;
        switch (randomNumber) {
            case 1:
                TransitionManager.start(slides_mc, {type:Blinds, direction:Transition.IN, duration:0.25});
                break;
            case 2:
                TransitionManager.start(slides_mc, {type:Fade, direction:Transition.IN, duration:0.25});
                break;
            case 3:
                TransitionManager.start(slides_mc, {type:Fly, direction:Transition.IN, duration:0.25});
                break;
            case 4:
                TransitionManager.start(slides_mc, {type:Iris, direction:Transition.IN, duration:0.25});
                break;
            case 5:
                TransitionManager.start(slides_mc, {type:Photo, direction:Transition.IN, duration:0.25});
                break;
            case 6:
                TransitionManager.start(slides_mc, {type:PixelDissolve, direction:Transition.IN, duration:0.25});
                break;
            case 7:
                TransitionManager.start(slides_mc, {type:Rotate, direction:Transition.IN, duration:0.25});
                break;
            case 8:
                TransitionManager.start(slides_mc, {type:Squeeze, direction:Transition.IN, duration:0.25});
                break;
            case 9:
                TransitionManager.start(slides_mc, {type:Wipe, direction:Transition.IN, duration:0.25});
                break;
            case 10:
                TransitionManager.start(slides_mc, {type:Zoom, direction:Transition.IN, duration:0.25});
                break;
        }
    } else
    {
        trace("error - transitionType not recognized");
    }
}

if(buttonsOn == false)
{
    prev_btn.visible = false;
    next_btn.visible = false;
}
slides_mc.gotoAndStop(1);
stage.scaleMode = StageScaleMode.SHOW_ALL;
// END FUNCTIONS AND LOGIC

stop();
  

Ответ №1:

Извините, но здесь отсутствует информация. Похоже, что опубликованный вами код не имеет отношения к вашим ошибкам.

Я вижу ошибку «недопустимое имя xml» — вы переименовали какие-либо переменные xml, переместили файлы или иным образом изменили файл xml? Если это так, повторите свои шаги и отмените все, что вы сделали.

Что касается второго набора ошибок if, похоже, что вы по ошибке удалили скобку. Вам придется покопаться и найти любой код, который управляет ‘slidesMovieClip_2’, и найти недостающую фигурную скобку.

надеюсь, это направит вас в правильном направлении —

Комментарии:

1. Единственное, что я делал, это добавлял изображения и текст на сцену и в библиотеку.. Я даже не прикасался к коду. Я все еще пытаюсь понять, почему написано «slidesMovieClip_2», когда у меня в библиотеке есть только «slidesMovieClip». У меня даже никогда не было 2

2. Хорошо = это может быть, но в какой-то момент вы, должно быть, что-то непреднамеренно изменили. Как я уже отмечал, вам нужно покопаться и выяснить, что именно, или опубликовать еще какой-нибудь релевантный код. В качестве альтернативы вы могли бы создать другой проект с этим шаблоном и просто скопировать в него все элементы вашей библиотеки. Я бы рекомендовал проделать некоторую работу, чтобы выяснить, что происходит и почему. Это сделает все намного менее таинственным в следующий раз, когда что-то подобное произойдет (и так и будет). Удачи!

3. Просто сегодня со мной случилось то же самое. Редактировал файл неделями, никогда не возникало проблем. Сегодня внезапно я перемещал свои ресурсы на своем компьютере, и в следующий раз, когда я попытался скомпилировать, тот же тип ошибки при поиске видеоролика с _2 добавлением в конец. Если я переименую видеоклип в моей библиотеке во что-то другое и скомпилирую, все будет в порядке, но каждый раз, когда я снова открываю документ, он делает это снова, и мне приходится переименовывать снова.