Hi everyone… i am currently experiencing a problem with my scroll bar… i followed the tutorial on this website for creating a custom scrollbar, and it worked perfectly… thanks…
however… i added a few extra lines of code at the end in order to enable mouse wheel scrolling… and that also works perfectly… the problem that i am facing is as follows:
i load 2 movieclips into another main movie clip all are separate files, and when i attempt to use the mouse wheel to scroll down… both movie clips that have the mouse wheel function in them are triggered resulting in both movieclips to scroll up and down at the same time!!!
does anyone have any suggestions???
i really would appreciate any help… here is the code i am using for the scroll bar, the mouse wheel function is at the end:
scrolling = function () {
var scrollHeight:Number = scrollTrack._height;
var contentHeight:Number = contentMain._height;
var scrollFaceHeight:Number = scrollFace._height;
var maskHeight:Number = maskedView._height;
var initPosition:Number = scrollFace._y=scrollTrack._y;
var initContentPos:Number = contentMain._y;
var finalContentPos:Number = maskHeight-contentHeight+initContentPos;
var left:Number = scrollTrack._x;
var top:Number = scrollTrack._y;
var right:Number = scrollTrack._x;
var bottom:Number = scrollTrack._height-scrollFaceHeight+scrollTrack._y;
var dy:Number = 0;
var speed:Number = 10;
var moveVal:Number = (contentHeight-maskHeight)/(scrollHeight-scrollFaceHeight);
scrollFace.onPress = function() {
var currPos:Number = this._y;
startDrag(this, false, left, top, right, bottom);
this.onMouseMove = function() {
dy = Math.abs(initPosition-this._y);
contentMain._y = Math.round(dy*-1*moveVal+initContentPos);
};
};
scrollFace.onMouseUp = function() {
stopDrag();
delete this.onMouseMove;
};
btnUp.onPress = function() {
this.onEnterFrame = function() {
if (contentMain._y+speed<maskedView._y) {
if (scrollFace._y<=top) {
scrollFace._y = top;
} else {
scrollFace._y -= speed/moveVal;
}
contentMain._y += speed;
} else {
scrollFace._y = top;
contentMain._y = maskedView._y;
delete this.onEnterFrame;
}
};
};
btnUp.onDragOut = function() {
delete this.onEnterFrame;
};
btnUp.onRollOut = function() {
delete this.onEnterFrame;
};
btnDown.onPress = function() {
this.onEnterFrame = function() {
if (contentMain._y-speed>finalContentPos) {
if (scrollFace._y>=bottom) {
scrollFace._y = bottom;
} else {
scrollFace._y += speed/moveVal;
}
contentMain._y -= speed;
} else {
scrollFace._y = bottom;
contentMain._y = finalContentPos;
delete this.onEnterFrame;
}
};
};
btnDown.onRelease = function() {
delete this.onEnterFrame;
};
btnDown.onDragOut = function() {
delete this.onEnterFrame;
};
if (contentHeight<maskHeight) {
scrollFace._visible = false;
btnUp.enabled = false;
btnDown.enabled = false;
} else {
scrollFace._visible = true;
btnUp.enabled = true;
btnDown.enabled = true;
}
// Add the mousewheel function
mouseListener = new Object();
// Create onMouseWheel function
mouseListener.onMouseWheel = function (delta) {
if(delta>0)
{
if(scrollFace._y - (speed) >=top)
{
scrollFace._y -= speed;
contentMain._y += (speed)* moveVal;
}
}
if(delta<0)
{
if(scrollFace._y + (speed) <=bottom)
{
scrollFace._y += speed;
contentMain._y -= (speed)* moveVal;
}
}
}
// Registering the listener to the Mouse object
Mouse.addListener(mouseListener);
};
scrolling();