Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Событие вращения колесика мышки (https://javascript.ru/forum/misc/2776-sobytie-vrashheniya-kolesika-myshki.html)

demoniqus 09.02.2009 17:26

Событие вращения колесика мышки
 
Добрый день! Столкнулся с проблемой определения события вращения колесика мышки. Искал в сети, нашел некоторый материал типа http://webdev.org.ua/node/424 ; http://forum.sources.ru/index.php?showtopic=163854 ; http://forum.sources.ru/index.php?showtopic=163854 (граждане админитраторы, не бейте меня, ссылки - не реклама, а доказательство, что я пытался сам разобраться в этом вопросе). Но никак не получается у меня. Лишь функция onmousewheel в Internet Eplorer работает кое-как.
Подскажите, пожалуйста, как правильно перехватить это событие в разных браузерах (IE, FF, Opera), определить направление вращение и количество прокрутов, а также куда вообще все это записывать? К примеру, я хочу перехватить вращение мышиного скролла на объекте DIV, так как все это записать?

ЗЫ Я ниже начинающего, посему плиз поподробнее!:)

ZoNT 09.02.2009 18:31

<html>
<body>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfhglsdjf glsdjf glsdj ljf ljgslf gdf gdf gdf gd<br>
df.jghd;lfhglsdjf glsdjf glsdj ljf ljgslf gdf gdf gdf gd<br>
df.jghd;lfhglsdjf glsdjf glsdj ljf ljgslf gdf gdf gdf gd<br>
df.jghd;lfhglsdjf glsdjf glsdj ljf ljgslf gdf gdf gdf gd<br>
df.jghd;lfhglsdjf glsdjf glsdj ljf ljgslf gdf gdf gdf gd<br>
df.jghd;lfhglsdjf glsdjf glsdj ljf ljgslf gdf gdf gdf gd<br>
    <div id="scr" style="width: 500px; height: 200px; border:1px solid red; overflow: auto;">
        1<br>
        2<br>
        3<br>
        4<br>
        5<br>
        6<br>
        7<br>
        8<br>
        9<br>
        1<br>
        2<br>
        3<br>
        4<br>
        5<br>
        6<br>
        7<br>
        8<br>
        9<br>
        1<br>
        2<br>
        3<br>
        4<br>
        5<br>
        6<br>
        7<br>
        8<br>
        9<br>
        1<br>
        2<br>
        3<br>
        4<br>
        5<br>
        6<br>
        7<br>
        8<br>
        9<br>
    </div>

<script type="text/javascript">
function PreventDefault(e) {
    e=e||window.event;
    if (e.preventDefault) e.preventDefault();
    else e.returnValue = false;
}

function wheel(e){
    e=e||window.event;
    var delta = 0;
    
    if (e.wheelDelta) delta = e.wheelDelta/8;
    else if (e.detail) delta = -e.detail*10;

    var div = e.target||e.srcElement;
    div.scrollTop = div.scrollTop - delta;
    
    PreventDefault(e);
}

var div = document.getElementById('scr');
if (div.addEventListener) div.addEventListener('DOMMouseScroll', wheel, false);
div.onmousewheel = wheel;
</script>
    
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
df.jghd;lfh<br>
</body>
</html>


Часовой пояс GMT +3, время: 10:59.