Просмотр полной версии : onRollOver/Out для масштабируемого мувика
может быть кто-то сталкивался с проблемой: делаем мувик, который при наведении мышки становится большего размера, а при выходе - меньшего. при выводе мышки на границу увеличенного мувика иногда появляется трясучка (извиняюсь за выражение ;) ), когда мувик начинает увеличиваться-уменьшаться быстро-быстро. отловить эту глупость мне не удаётся. в чём может быть проблема?
могу представить себе только обратную ситуацию, когда при наведении становится меньше, а при отведении больше. тогда трясучка возможна.
обратная ситуация банальна :) а тут, то-то и оно, я понять не могу из-за чего баг вылезает :(
обратная ситуация банальна :) а тут, то-то и оно, я понять не могу из-за чего баг вылезает :(
исходник тогда лучше дай
ты ссылку посмотрел? если не сложно, кликни меня в аську 122298230
ты ссылку посмотрел? если не сложно, кликни меня в аську 122298230
ссылку смотрел
а аська это личное :)
this.onRollOver = function () {
if (this.lineSize != "-> big") {
this.lineSize = "-> big";
this.tfCont.tf1._visible = true;
_root["tf"+indx]._visible = false;
this.gotoAndPlay ("goBig");
};
};
this.onRollOut = function () {
if (this.lineSize != "-> small") {
this.lineSize = "-> small";
this.gotoAndPlay ("goSmall");
};
};
такой скрипт висит на мувике. метки соответствуют началам твинингов для уменьшения/увеличения. по окончаниям твинингов нет скриптов, кроме установки флажка lineSize в значения big или small.
а fla мне самому создавать? :) нет уж. давай не код, а исходник.
это шантаж :) смотри мыло.
Я так понимаю что проблема в следующем. Ты навел на кнопку скажем А, она начала увеличиваться (скажем от 100% до 150%), потом на кнопку В и она стала увеличивать (100% -> 150%), а А уменьшаться (150% -> 100%). Она еще не уменьшилась до конца (gecnm будет 120%) как ты снова на нее наводишь. И вот этот момент у тебя срабатывает this.gotoAndPlay ("goBig"); и тут то кнопка A становится размером 100% (так как ты с самого начала пускаешь увеличение). И мышка которая была на границе 120% оказывается далеко от границ 100% и поэтому снова попададает на кнопку В и пошел цикл...
фигушки. ты за 2 минуты сможешь попасть на верхнюю границу самой верхней строчки. и получим ту же самую трясучку. без участия других кнопок :(
за две минуты личного времени. трясучку можно отловить и на верхней границе самой верхней строчки, т.е. без участия других активных строк :(
спасибо, друг iNils, ты был прав. С такой анимацией не нашёл лучшего решения, как воткнуть ещё одну проверку
this.onRollOut = function () {
if (this.lineSize != "-> small") {
if (this.lineSize == "-> big") {
this.lineSize = "small";
this.gotoAndStop("normal");
} else {
this.lineSize = "-> small";
this.gotoAndPlay ("goSmall");
};
};
};
конечно, изящнее было бы анимировать уменьшение/увеличение от текущего состояния, но тогда итоговый swf существенно потолстеет, а для меня его итоговый вес критичен.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.