У меня есть родительский контейнер, который установлен в overflow: auto:
и контейнер внутри него с overflow: auto
. Когда я навис над контейнером прокрутки дочерних элементов, я хочу только прокрутить этот контейнер, а не родительский контейнер, и наоборот.Как остановить прокрутку Отложить на родительскую полосу прокрутки
В настоящее время, когда я прокручиваю страницу вниз, родительский прокручивает до дочернего контейнера, затем начинает прокручивать дочерний контейнер, а затем возвращается к родительскому контейнеру, когда ребенок закончил прокрутку. Есть ли способ предотвратить это?
Вот пример того, что у меня есть:
<div class="parent">
<div>Outter text</div>
<div>Outter text</div>
<div>Outter text</div>
<div>Outter text</div>
<div>Outter text</div>
<div>Outter text</div>
<div class="scroll-container">
<ul>
<li>Stuff</li>
<li>Stuff</li>
<li>Stuff</li>
<li>Stuff</li>
<li>Stuff</li>
<li>Stuff</li>
<li>Stuff</li>
</ul>
</div>
<div>Outter text</div>
<div>Outter text</div>
<div>Outter text</div>
</div>
и мой CSS:
.parent {
height: 100px;
overflow-y: auto;
border: 1px solid black;
}
.scroll-container {
height: 35px;
overflow-y: auto;
color: red;
}
Вы заметите в этом jsFiddle, что, как вы прокрутите вниз до scroll-container
скроллинг будет deffer первым от parent
(что ожидается, так как мышь зависает над scroll-container
), но затем возвращается к parent
, когда она достигла дна (это то, что я чувствую d хотел бы предотвратить).
Я не против использования jQuery/javascript, но я хотел бы избежать, если это возможно.
Хм, как представляется, не делать ничего для меня (в Chrome). Если я прокручусь в 'scroll-container' и удару снизу,' parent-container' не должен прокручиваться, так как моя мышь все равно будет вибрировать над 'scroll-container' –
ya, потому что DIV не имеет фокуса, вы нужно также обрабатывать случай зависания, я буду обновлять ответ как можно скорее, но я не могу его проверить, потому что у меня нет в настоящее время колесика мыши на моей мыши для ноутбука –