Предотвратить прокрутку для определенного элемента?

0

Я использую jQuery draggable() на определенном DIV-элементе, поэтому могу свободно перемещать его.

DIV перестает быть большим, поэтому полосы прокрутки появляются, когда часть DIV находится за пределами видимой области, но для этого элемента я бы хотел, чтобы полосы прокрутки не появлялись.

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

Итак, мой вопрос: можно ли исключить определенный элемент, влияющий на полосы прокрутки?

(Я не прошу использовать переполнение, чтобы скрыть полосы прокрутки, я не хочу, чтобы какой-то DIV повлиял на них)

Есть идеи?

  • 0
    Что вы можете сделать, так это переполнение-у: скрыто; Это должно по крайней мере предотвратить полосы прокрутки внизу. Если вы дадите мне Переполнение элемента: скрыто; это не означает, что элементом может быть только высота или ширина вашего экрана, так что вы можете сделать это также. и я почти уверен, что есть событие, которое запускается, когда вы начинаете перетаскивание, в этом случае вы можете добавить класс в div, и этот класс дает вам переполнение: hidden; в конце перетаскивания уберите этот класс и вернитесь ли он к стандартному
  • 0
    Вы можете связать событие нажатия кнопки с mousedown, mousemove и сделать так, чтобы это событие обновляло css контейнера, чтобы не прокручивать ни одного?
Теги:
scrollbar

1 ответ

0
Лучший ответ

Ваш перетаскиваемый DIV можно обернуть в другой div, который не позволит создавать полосы прокрутки.

<style>
.wrapper {
    height: 100%;
    position: absolute;
    width: 100%;
    overflow: hidden;
    top: 0;
    left: 0;
}

.draggable {
    position: absolute;
    top: 1000px; /* simulating going over the edge of the page */
    left: 800px; /* simulating going over the edge of the page */
    width: 500px;
    height: 500px;
    background: #F00;
}
</style>    


<div class="wrapper">
    <div class="draggable">
        Hello - No scrollbars created for me. :)
    </div>
</div>
  • 0
    хорошее решение, работает как шарм!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню