• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

2 scroll bary dla jednego diva (jeden na górze, jeden na dole) JQuery, JS

0 głosów
364 wizyt
pytanie zadane 11 września 2017 w JavaScript przez raddko Nowicjusz (190 p.)

Cześć próbuję ustawić scrollbary na górze i na dole jednego diva. Po poszukiwaniach na internecie doszedłem do rozwiązania. Problem niestety pojawia się przy przewijaniu paska - wydaję mi się, że przez to, że jeden scrollbar zmienia drugi i vice versa to działanie niezbyt dobrze wygląda (efekt zacinania się)
Ma ktoś jakiś pomysł jak to zrobić, żeby to działało płynnie ? 

Wrzucam kod do podpatrzenia.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Scroll Bar Top</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

    <style>
        * {

        }
        body {
            background-color: grey;
        }
        .container, #scrollContainer, .modalWindow {
            margin-left: auto;
            margin-right: auto;
        }
        .container {
            background-color: white;
            width:800px;
            height:400px;
            margin-top:30px;
        }
        #scrollContainer {
            transform: translate3d(0,0,0);
            width:300px;
            overflow-x:scroll;
            overflow-y:hidden;
            height:20px;
        }
        .modalWindow {
            position:relative;
            width:300px;
            height:200px;
            background-color: #B0B0B0;
            overflow-x:scroll;
            overflow-y:hidden;
            display: flex;
            -transition-duration: 2s;


        }
        .item1 {
            background-color:black;
            min-width:150px;
            height:200px;
        }
        .item2 {
            background-color: red;
            min-width:150px;
            height:200px;
        }
        #scrollTop {
             transform: translate3d(0,0,0);
             overflow-x:scroll;
             overflow-y:hidden;
             width:600px;
             height:20px;
         }


    </style>
</head>
<body>
    <div class="container">

        <div id="scrollContainer">
            <div id="scrollTop"></div>
        </div>

        <div class="modalWindow">
            <div class="item1"></div>
            <div class="item2"></div>
            <div class="item1"></div>
            <div class="item2"></div>
        </div>

    </div>

<script>

    $(function(){
        var top = $("#scrollContainer");
        var bottom =  $(".modalWindow");


            top.scroll(function(){

                bottom.scrollLeft(top.scrollLeft());
                console.log("przsuwam1")

            });

            bottom.scroll(function () {
                console.log("przsuwam2");
                top.scrollLeft(bottom.scrollLeft());
            });

    });

</script>
</body>
</html>

 

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
2 odpowiedzi 509 wizyt
pytanie zadane 28 czerwca 2018 w HTML i CSS przez niezalogowany
0 głosów
2 odpowiedzi 318 wizyt
pytanie zadane 1 marca 2018 w C i C++ przez jaku9987 Nowicjusz (180 p.)
+1 głos
1 odpowiedź 902 wizyt
pytanie zadane 13 lipca 2018 w JavaScript przez Bakr Mądrala (6,850 p.)

93,772 zapytań

142,730 odpowiedzi

323,382 komentarzy

63,369 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...