Scroll Wheel in Fire Fox and Safari

I’ve searched and searched on this but with no exact answer. I have a script for scroll wheel support (which I shamefully purchased due to time constraints) but it only works in Internet Explorer. Can some one kindly look at this script and tell me why the scroll wheel only works in IE but not firefox and safari? From my searching it looks like a common issue but I cannot find a resolution to it. Thanks for any help! Script below:

blur = new flash.filters.BlurFilter(0, 10, 0);
mouseListener = new Object();
mouseListener.onMouseWheel = function (delta)
{
if (delta < 0)
{
dragger._y = dragger._y + dragger._height;
} // end if
if (delta > 0)
{
dragger._y = dragger._y - dragger._height;
} // end if
if (targYscroll > 0)
{
targYscroll = 0;
} // end if
if (targYscroll < theMask._height - theText._height)
{
targYscroll = theMask._height - theText._height;
} // end if
if (dragger._y < 0)
{
dragger._y = 0;
} // end if
if (dragger._y > theMask._height - dragger._height)
{
dragger._y = theMask._height - dragger._height;
} // end if
targYscroll = -dragger._y * (theText._height / theMask._height);
};
Mouse.addListener(mouseListener);
targY = 0;
targYscroll = 0;
scrollOn = false;
scrollAmount = (theText._height - theMask._height / 1.300000E+000) / (theMask._height - dragger._height);
dragger.onPress = function ()
{
scrollOn = true;
startDrag (this, false, this._x, 0, this._x, theMask._height - this._height);
};
dragger.onRelease = dragger.onReleaseOutside = function ()
{
scrollOn = false;
stopDrag ();
};
theText.setMask(theMask);
theText.onEnterFrame = function ()
{
if (scrollOn)
{
targY = -dragger._y * scrollAmount;
targYscroll = targY;
}
else
{
targY = targYscroll;
} // end else if
this._y = this._y - (this._y - targY) / 1;
blur.blurY = Math.abs((this._y - targY) / 1);
this.filters = [blur];
};
stop ();