#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
добавлением в конец. Если я переименую видеоклип в моей библиотеке во что-то другое и скомпилирую, все будет в порядке, но каждый раз, когда я снова открываю документ, он делает это снова, и мне приходится переименовывать снова.