Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.07.2016, 21:01
Интересующийся
Отправить личное сообщение для lossy11 Посмотреть профиль Найти все сообщения от lossy11
 
Регистрация: 06.04.2016
Сообщений: 12

помогите со скроллом
здравствуйте. перейду сразу к делу. есть див класс его пусть будет parent со стилем overflow-y: scroll;. в нем есть два блока один блок со стилем float: left;, другой со стилем float: right;. высота этих блока постоянно разная будет. надо чтобы при скролле они в конец дива parent приходили одновременно. то есть блок у которого высота меньше, будет скролиться медленее чем блок который меньше его по высоте. подскажите, как это реализовать. а то вообще представления даже нет
Ответить с цитированием
  #2 (permalink)  
Старый 20.07.2016, 22:13
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

одинаковое время прокрутки блоков разной высоты
lossy11,
<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  <meta name="robots" content="noindex, nofollow">
  <meta name="googlebot" content="noindex, nofollow">
<style type="text/css">
    #chating_wrapper{
    padding: 0;
    height: 175px;
     border: 2px #8B4513 solid;
}

.chating_history{
    font-weight: bold;
}

.chating_block{
    height: 50px;
    border-bottom:  2px #8B4513 solid;
}

.chating_list{
    height: 175px;
    width: 50%;
    overflow-y: hidden;
    float: left;
}

.chating_text{
    padding: 4px 0 4px 46px;
}


  </style>

  <title> by dirkdirk</title>







<script>
window.addEventListener("DOMContentLoaded", function() {
    var nodes = document.querySelectorAll(".chating_list");
    var a = nodes[0].scrollHeight  - nodes[0].clientHeight;
    var b = nodes[1].scrollHeight  - nodes[1].clientHeight;
    function wheel(event) {
        var target = event.target;
        while (target != document) {
            if (target == nodes[0]||target == nodes[1]) {
                event.preventDefault();
                var delta = 0;
                if (event.wheelDelta) delta = event.wheelDelta / 120;
                else if (event.detail) delta = -event.detail / 3;
                delta = delta > 0 ? -30 : 30 ;{};
                nodes[0].scrollTop += delta;
                nodes[1].scrollTop += delta*b/a;
                break
            }
            target = target.parentNode
        }
    }
    window.addEventListener("mousewheel", wheel, false);
    window.addEventListener("DOMMouseScroll", wheel, false)
});
</script>


</head>

<body>
  <div id="chating_wrapper">

<div class="chating_list" id="chating_list">
     <div class="chating_block">1</div>
     <div class="chating_block">2</div>
     <div class="chating_block">3</div>
     <div class="chating_block">4</div>
     <div class="chating_block">5</div>
     <div class="chating_block">6</div>
     <div class="chating_block">7</div>
     <div class="chating_block">8</div>
     <div class="chating_block">9</div>
     <div class="chating_block">10</div>
     <div class="chating_block">11</div>
     <div class="chating_block">12</div>
     <div class="chating_block">13</div>
     <div class="chating_block">14</div>
     <div class="chating_block">15</div>
     <div class="chating_block">16</div>
     <div class="chating_block">17</div>
     <div class="chating_block">18</div>
     <div class="chating_block">19</div>
     <div class="chating_block">20</div>
 </div>
 <div class="chating_list" id="chating_list">
    <div class="chating_block">1</div>
     <div class="chating_block">2</div>
     <div class="chating_block">3</div>
     <div class="chating_block">4</div>
     <div class="chating_block">5</div>
     <div class="chating_block">6</div>
</div>

</div>
</body>

</html>
Ответить с цитированием
  #3 (permalink)  
Старый 20.07.2016, 22:24
Интересующийся
Отправить личное сообщение для lossy11 Посмотреть профиль Найти все сообщения от lossy11
 
Регистрация: 06.04.2016
Сообщений: 12

а нет кода на jquery?
Ответить с цитированием
  #4 (permalink)  
Старый 21.07.2016, 23:49
Интересующийся
Отправить личное сообщение для lossy11 Посмотреть профиль Найти все сообщения от lossy11
 
Регистрация: 06.04.2016
Сообщений: 12

спасибо большое за "помощь". сам разобрался. и то что ты выше кинул, гавно кривое
Ответить с цитированием
  #5 (permalink)  
Старый 22.07.2016, 06:21
Профессор
Отправить личное сообщение для warren buffet Посмотреть профиль Найти все сообщения от warren buffet
 
Регистрация: 08.07.2016
Сообщений: 1,332

Сообщение от lossy11
то есть блок у которого высота меньше, будет скролиться медленее
Абвгдеёж, все наоборот и задача сводится к заданию шага для каждого дива как отношение высот.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите решить проблему со скроллом Jigan2 jQuery 0 20.03.2015 10:42
Помогите новичку! Анатолий Саратовцев Events/DOM/Window 7 04.08.2012 17:46
Помогите со скроллом Дмитрий888 Элементы интерфейса 3 10.02.2012 15:24
Помогите со скроллом Дмитрий888 Events/DOM/Window 0 09.02.2012 23:14
Помогите! Многоуровневые вкладки! sergeeeeee Элементы интерфейса 2 02.08.2010 23:50