PDA

Просмотр полной версии : Движение сайта за мышкой?


megadgi
31.08.2007, 10:01
Подскажите как сделать чтобы сай прокручивался в право и влево зависимости от того куда вы поведете мышь???
Вот как сдесь FOSTERS (http://www.fosterslaw.ru/flashindex.htm)

CorC
31.08.2007, 10:30
_xmouse - отследить Х мыши на ролике
onEnterFrame - реагировать на отловленно Х и действовать (двигать).
Тут не панорама конечно, а просто с краев добавляется еще копия середины.

udaaff
31.08.2007, 10:39
На сцене должен быть мувик "phon_mc". Код помести в первый кадр.
var moving:Boolean = false;
onMouseMove = function () {
if (Math.abs(Stage.width/2-_xmouse)>100 && !moving) {
moving = true;
phon_mc.onEnterFrame = function() {
velocity = (Stage.width/2-_xmouse)/50;
this._x += velocity;
};
} else if (Math.abs(Stage.width/2-_xmouse)<=100 && moving) {
moving = false;
delete phon_mc.onEnterFrame;
}
};

megadgi
31.08.2007, 11:24
а какже сделать чтоб он показывал от начала мувика до конца???

udaaff
31.08.2007, 20:28
Не понял. Что не получилось?

P.S. Не заметил, что ты в личке уточнил.
var moving:Boolean = false;
var velocity:Number;
var maxVel:Number;
var k:Number = 10;
//
onMouseMove = function () {
if (Math.abs(Stage.width/2-_xmouse)>100 && !moving) {
moving = true;
phon_mc.onEnterFrame = function() {
velocity = (Stage.width/2-_xmouse)/k;
//вычисляем максимальное значение скорости с учетом знака
maxVel = Math.abs((Stage.width/2-_xmouse))/(Stage.width/2-_xmouse)*Stage.width/2/k;
/*
Проверяем не выходил ли значение св-ва _x
из заданного диапазона. Если выходит, то
не прибавляем значение скорости.
*/
if (this._x+maxVel>=Stage.width-this._width && this._x+maxVel<=0) {
this._x += velocity;
}
};
} else if (Math.abs(Stage.width/2-_xmouse)<=100 && moving) {
moving = false;
delete phon_mc.onEnterFrame;
}
};