// При наведении на левый блок var winHeight = $(window).height(); var margin = $('#left_list').height() - winHeight;
// движение при попадании курсора в области $('#left_list').unbind('mouseover').mouseover(function(e){ // top 1/3 if (e.pageY < (winHeight / 3)) { var speed = (winHeight / 6) / e.pageY; if (speed > 2) speed = 2; $('#direction').val('top'); } // bottom 1/3 if (e.pageY > 2 * (winHeight / 3)) { var speed = (e.pageY - ((2 / 3) * winHeight)) / (winHeight / 6) + 0.5; if (speed > 2) speed = 2; $('#direction').val('bottom'); } $('#speed').val(speed);
var direction = $('#direction').val(); var speed = $('#speed').val();
// bottom 1/3, list moves top if (direction == 'bottom') { if (parseInt($('#left_list').css('margin-top')) > (-1) * margin) { $('#left_list').animate({marginTop: '-=50px'}, (300 / speed)); $('#int').val(parseInt($('#left_list').css('margin-top'))); } else { $('#left_list').animate({marginTop: '-' + margin + 'px'}, (300 / speed)); $('#int').val(parseInt($('#left_list').css('margin-top'))); } } // top 1/3, list moves bottom if (direction == 'top') { if ((parseInt($('#left_list').css('margin-top'))) < 0) { $('#left_list').animate({marginTop: '+=50px'}, (300 / speed)); $('#int').val(parseInt($('#left_list').css('margin-top'))); } else { $('#left_list').animate({marginTop: '0px'}, (300 / speed)); $('#int').val(parseInt($('#left_list').css('margin-top'))); } }
// стопим, если увели мышь в середину if (direction == 'none') { $('#left_list').stop(); } });
// остановка при выведении указателя за пределы $('#left_list').unbind('mouseout').mouseout(function(){ $('#speed').val('0'); $('#direction').val('none'); $('#left_list').stop(); });
// увеличение номера при наведении $('#left_list > p.project_number').hover( function() { $(this).animate({fontSize: '10pt'}, 150); }, function(){ $(this).animate({fontSize: '8pt'}, 150); } ); );
Суть проблемы:
Во всем, кроме ФайрФокса, блок прокручивается именно при движении мыши, а при простое на месте тоже останавливается. Надо, естественно, чтобы везде просто при поднесении мыши к краю списка, он бы скроллился. Пробовал сделать через setInterval, но это страшно тормозит скрипт, нет ли очевидного и грамотного способа реализовать это?
You can post now and register later.
If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.
Здравствуйте, подскажите какой тег использовать для увеличения значения, пример на картинке.
Вроде, про такой тег я слышала. Если есть тег прогресс бар, значит и такое должно быть.
Question
vatrikovsky
Делаю вертикально скроллящееся меню по типу вот этого:
http://www.netpro.ru/?action=DABlank2 (откройте "Мы сделали"), только на javaScript + jQuery
HTML:
java script:
Суть проблемы:
Во всем, кроме ФайрФокса, блок прокручивается именно при движении мыши, а при простое на месте тоже останавливается. Надо, естественно, чтобы везде просто при поднесении мыши к краю списка, он бы скроллился. Пробовал сделать через setInterval, но это страшно тормозит скрипт, нет ли очевидного и грамотного способа реализовать это?
Спасибо.
Link to comment
Share on other sites
0 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.