![]() |
|
||||||||||
|
|
|
|||||
|
Регистрация: Sep 2005
Адрес: Минск
Сообщений: 389
|
Суть в том, что есть 4 пункта меню, занесенных в массив items и слайдер vbn_mc. Слайдер должен в пределах меню при наведении на любой из его пунктов бегать за мышью с замедлением (что мне удалось реализовать), но при уводе мыши с меню у меня слайдер резко останавливается там, где была его последняя координата (delete vbn_mc.onEnterFrame). Меня такой расклад не совсем устраивает и хотелось бы, чтобы при уводе мыши с любого из пунктов меню, слайдер опять же с замедлением останавливался по центру соответствующего пункта.
var items = [company_btn, portfolio_btn, assoc_btn, contact_btn];
var leftLim = 20+vbn_mc._width/2;
var rightLim = 580-vbn_mc._width/2;
for (var i = items.length; i--; ) {
var item = items[i];
item.onRollOver = function() {
vbn_mc.onEnterFrame = function() {
var x = _xmouse;
if (x<leftLim) {
x = leftLim;
}
if (x>rightLim) {
x = rightLim;
}
this._x += Math.round((x-this._x)/10);
};
};
item.onRollOut = item.onDragOut=function () {
for (var i = items.length; i--; ) {
if (items[i].hitTest(x, _ymouse, true)) {
break;
}
}
if (i>=0) {
return;
}
delete vbn_mc.onEnterFrame;
};
}
|
|
|||||
|
Регистрация: Sep 2005
Адрес: Минск
Сообщений: 389
|
Неужели никто не подскажет?
|
|
|||||
|
strange mood
|
Не знаю точной иерархии, поэтому тебе придётся подправить пути к мувикам...
var items = [company_btn, portfolio_btn, assoc_btn, contact_btn];
var leftLim = 20+vbn_mc._width/2;
var rightLim = 580-vbn_mc._width/2;
for(var i in items){//для каждого пункта
var item=items[i];
item.onRollOver=function(){
vbn_mc.onEnterFrame=function(){
var xm = _xmouse;
if (xm<leftLim) {
xm = leftLim;
}else if (x>rightLim) {
x = rightLim;
}//if
this._x += Math.round((x-this._x)/10);
var dist=this._x-xm;
if(dist>-0.5||dist<0.5)delete this.onEnterFrame; //ключевая строка :)
}//onEnterFrame
}//onRollOver
}//for
__________________
тонкий тролль, осеянный благодатью |
|
|||||
|
Регистрация: Sep 2005
Адрес: Минск
Сообщений: 389
|
Спасибо за ответ. Сегодня же обязательно проверю.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 03:31. |
|
|
« Предыдущая тема | Следующая тема » |
|
|