Прокрутка колесиком мыши по флэш-контенту - PullRequest
0 голосов
/ 13 июля 2011

Я пытаюсь изменить событие для колесика мыши после выхода / ввода флэш-содержимого.

  1. на флэш-памяти - хочу прокрутить флэш-карусель
  2. в Интернете - хочу прокрутитьвеб-контент

Моя проблема:

Различные браузеры дают разную «фокусировку» для элемента flash и поэтому не запускаются должным образом в событиях: Event.MOUSE_LEAVE, MouseEvent.MOUSE_OVER.У меня запущен JS для MOUSE_OVER и MOUSE_LEAVE, но это, похоже, не работает.

Также mouseWheel относится к браузеру, а не к флэш-объекту.

Firefox 4.x / 5.0 - запускает их правильнобез нажатия Chrome 12.0.742.112 - он срабатывает после предоставления «фокуса» или щелчка по флэш-объекту, например IE 9.0.1

JS-код:

function stopWheel(e){
    if(!e){ e = window.event; } /* IE7, IE8, Chrome, Safari */
    if(e.preventDefault) { e.preventDefault(); } /* Chrome, Safari, Firefox */
    e.returnValue = false; /* IE7, IE8 */
}

function player_enter(){
    document.onmousewheel = function(){ stopWheel(); }  /* IE7, IE8 */
    if(document.addEventListener){                      /* Chrome, Safari, Firefox */
        document.addEventListener('DOMMouseScroll', stopWheel, false);
    }
}

function player_leave(){
    document.onmousewheel = null;                       /* IE7, IE8 */
    if(document.addEventListener){                      /* Chrome, Safari, Firefox */
        document.removeEventListener('DOMMouseScroll', stopWheel, false);
    }
}

Есть что-нибудьЯ мог бы изменить?

1 Ответ

0 голосов
/ 13 июля 2011

во вспышке вы можете прослушать событие колеса мыши. и если у вас там есть прослушиватель событий, то он остановит колесо, даже не передавая его на html-страницу. и когда вы находитесь за пределами вспышки, событие wheel делает то, что должно (прокрутка веб-сайта)

 addEventListener(MouseEvent.MOUSE_WHEEL, handleMouseWheel);
...