Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   не могу сделать нормальную прокрутку скролла (http://www.flasher.ru/forum/showthread.php?t=120267)

NewMylton 15.01.2009 22:32

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

мне нужно, чтобы этот скролл можно было прокручивать колесиком мыши и стрелками по краям скролла. Еще у него какое то несоответствие длины прокрутки с контентом, приходиться постоянно подгонять под размер вот эту строчку: set_y = -(_root.allComments._height*perc_y)/90;

Мне срочно нужна ваша помощь с ответом, готов заплатить.

Код:

function scroller(){
        _root.createEmptyMovieClip('scrollbar',1);
        _root.scrollbar._x=882;
        _root.scrollbar._y=132;
        //
        _root.scrollbar.createEmptyMovieClip('bar',0);
        with(_root.scrollbar.bar){beginFill(0xCCCCCC,100);moveTo(0,0);lineTo(0,320);lineTo(10,320);lineTo(10,0);lineTo(0,0);endFill();}
       
        //
        _root.scrollbar.createEmptyMovieClip('slider',1);
        with(_root.scrollbar.slider){beginFill(0x999999,100);moveTo(0,0);lineTo(0,30);lineTo(10,30);lineTo(10,0);lineTo(0,0);endFill();
                leftSide = 0;
                topSide = 0;
                rightSide = _root.scrollbar._width-_root.scrollbar.slider._width;
                bottomSide = _root.scrollbar._height-_root.scrollbar.slider._height;
        }
        _root.scrollbar.slider.onPress=function(){this.startDrag (false, leftSide, topSide, rightSide, bottomSide);}
        _root.scrollbar.slider.onRelease=_root.scrollbar.slider.onReleaseOutside=function(){this.stopDrag ();}
        //
        _root.scrollbar.onEnterFrame = function(){
                get_y = this.slider._y;
                perc_y = Math.floor(get_y/(this._height+(.1*this._height)-this.slider._height)*100);
                targ_y = _root.allComments._y;
                set_y = -(_root.allComments._height*perc_y)/90;
                _root.allComments._y=set_y;
        }
        //
        _root.createEmptyMovieClip('arrow',2);
        _root.arrow._x=882;
        _root.arrow._y=122;
        with(_root.arrow){beginFill(0xEBEBEB,100);moveTo(0,0);lineTo(0,10);lineTo(10,10);lineTo(10,0);lineTo(0,0);endFill();}
        with(_root.arrow){beginFill(0x999999,100);moveTo(5,2);lineTo(8,8);lineTo(2,8);lineTo(5,2);endFill();}
        _root.arrow.duplicateMovieClip('arrowDown',3);
        with(_root.arrowDown){
                _x=892;
                _y=462;
                _rotation=180;
               
        }
        if(_root.allComments._height>_root.scrollbar._height){_root.scrollbar._visible=true;_root.arrow._visible=true;_root.arrowDown._visible=true;}
        else{_root.scrollbar._visible=false;_root.arrow._visible=false;_root.arrowDown._visible=false;}

};

Спасибо!


Часовой пояс GMT +4, время: 15:27.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.