не знаю как у вас получилось, у меня в мозиле скроллы работают на body
мой вариант без jquery
<script>
function wheel(event)
{
var delta=0
if(!event) event = window.event
if(event.wheelDelta) delta = event.wheelDelta/120
else if(event.detail) delta = -event.detail/3
if(delta && typeof handle == 'function')
{
handle(delta)
if(event.preventDefault) event.preventDefault()
event.returnValue = false
}
}
function over_div(elem)
{
handle = function(delta)
{
if(delta > 0) elem.scrollTop -= 30;
else elem.scrollTop += 30;
}
}
function out_div(elem)
{
handle = null
}
if(window.addEventListener)
window.addEventListener('DOMMouseScroll', wheel, false);
window.onmousewheel = document.onmousewheel = wheel;
</script>
<style>
.div_id
{
width:300px;
height:300px;
overflow-y:scroll;
border:1px solid #aaa;
margin-top:550px;
margin-left:150px
}
</style>
<body>
<img style="height:4000px;position:absolute;z-index:-5;visibility:hidden;">
<div class="div_id" onMouseOver="over_div(this)" onMouseOut="out_div(this)">
<script> for(i=0; i<100; i++) document.write("Текст <br>\n") </script>
</div>
</body>