Как я могу отключить браузер или полосу прокрутки элемента, но все еще позволить прокручивать с колесом или клавишами со стрелками?

PowerShell очень мощен, более мощен, чем стандарт, созданный-ins из оболочек Unix (но только потому, что он включает большую часть функциональности, обычно выходил из оболочки к подпрограммам). Кроме того, полагайте, что можно записать апплеты на любом языке.NET, включая IronPython, IronRuby, PerlNet, и т.д. или можно просто назвать команды Cygwin от PowerShell, игнорируя всю дополнительную функциональность, и это будет работать так же к Bash, KornShell, или безотносительно...

52
задан TylerH 14 August 2014 в 04:49
поделиться

2 ответа

Ну, возможно, не самый интуитивно понятный, на мой взгляд, но я могу представить, что вы можете чтобы получить достойный опыт, попробуйте.

overflow:hidden; 

убедитесь, что родительский объект имеет высоту и ширину и отображается как блок

-4
ответ дан 7 November 2019 в 09:29
поделиться

Как и в предыдущих ответах, вы должны использовать overflow: hidden , чтобы отключить полосы прокрутки в теле / ​​div.

Затем вы должны привязать колесо мыши к функции, которая изменяет scrollTop div для имитации прокрутки.

Для клавиш со стрелками вы должны привязать событие keydown для распознавания клавиши со стрелкой, а затем измените scrollTop и scrollLeft div, чтобы имитировать прокрутку. (Примечание: вы используете keydown вместо keypress , поскольку IE не распознает нажатие клавиши для клавиш со стрелками.)
Edit: I couldn ' t заставить FF / Chrome распознавать keydown на div, но это работает в IE8. В зависимости от того, для чего вам это нужно, вы можете установить прослушиватель keydown в документе для прокрутки div. (В качестве примера просмотрите ссылку на keyCode.)

Например, прокрутка колесом мыши (с использованием jQuery и подключаемого модуля колеса мыши):

<div id="example" style="width:300px;height:200px;overflow:hidden">
insert enough text to overflow div here
</div>

<script>
$("#example").bind("mousewheel",function(ev, delta) {
    var scrollTop = $(this).scrollTop();
    $(this).scrollTop(scrollTop-Math.round(delta));
});
</script>

(Это быстрый макет, вам придется изменить числа, поскольку для меня это прокручивается немного медленно.)

keyCode reference
плагин mousewheel
keydown, keypress @ quirksmode

Обновление от 19.12.2012:

Обновленное местоположение плагина mousewheel находится по адресу : https: // github. com / brandonaaron / jquery-mousewheel

48
ответ дан 7 November 2019 в 09:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: