вертикальная прокрутка на основе mouseY - PullRequest
0 голосов
/ 05 июля 2010

Мне нужно написать простой метод, который позволит мне переместить видеоклип внутрь другого, как в http://www.cballestimenti.it/ (мне нужно переместить его по вертикали, а не по горизонтали).1004 * Я написал этот простой код, но он, кажется, не работает должным образом ... Кто-нибудь может мне помочь?Большое спасибо заранее!

public function factor():void
{
    thumbs.addEventListener(MouseEvent.MOUSE_MOVE, moveSlide);
    factor = ((content.height)/container.height);
}

private function moveSlide(e:MouseEvent):void
{
    if (container.mouseX>=0 && container.mouseX<=container.width && container.mouseY>=0 && container.mouseY<=container.height)
    {
        TweenMax.to(content, 0.3, { y:(-(container.mouseY)*factor) });
    }
}

1 Ответ

1 голос
/ 06 июля 2010

Будет лучше, если вы скажете нам, ПОЧЕМУ или КАК это «не работает должным образом». И сообщите нам любые ошибки, которые вы получаете.

Я сразу вижу некоторые вещи не так. Сначала вы устанавливаете открытый метод с именем factor, затем внутри этого метода вы устанавливаете factor в число! Так что же такое factor? Это функция или число?

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

Я собираюсь игнорировать превью MC и просто использовать контент. Я предполагаю, что содержимое MC находится внутри контейнера MC. Я придумал это:

var maxHeight:Number = 400;
stage.addEventListener(MouseEvent.MOUSE_MOVE, moveSlide);

function moveSlide(e:MouseEvent):void
{
    var mouseFactor:Number = container.mouseY / maxHeight;
    var targetY:Number = (container.content.height - maxHeight) * -mouseFactor;
    container.content.y = targetY;
}

Постарайся, чтобы это сначала заработало без всякой анимации. Затем, как только вы начнете работать с математикой, легко добавить эффекты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...