За последние 24 часа нас посетили 18755 программистов и 1656 роботов. Сейчас ищут 1711 программистов ...

открыть/Закрыть выезжал

Тема в разделе "JavaScript и AJAX", создана пользователем hust0, 26 янв 2017.

  1. hust0

    hust0 Активный пользователь

    С нами с:
    6 июл 2013
    Сообщения:
    321
    Симпатии:
    8
    Здравствуйте, как можно в данном коде сделать чтобы div выезжал? На данный момент при нажатий он резко появляется...


    Код (Javascript):
    1. function showHide(element_id) {
    2.  
    3.              
    4.                 if (document.getElementById(element_id)) {
    5.                  
    6.                     var obj = document.getElementById(element_id);
    7.                  
    8.                  
    9.                  
    10.                  
    11.                     if (obj.style.display != "block") {
    12.                  
    13.                         obj.style.display = "block";
    14.                    
    15.                     }
    16.                     else{ obj.style.display = "none"; }
    17.                 }
    18.              
    19.             }  
     
  2. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
  3. hust0

    hust0 Активный пользователь

    С нами с:
    6 июл 2013
    Сообщения:
    321
    Симпатии:
    8
  4. marsik

    marsik Активный пользователь

    С нами с:
    30 дек 2008
    Сообщения:
    246
    Симпатии:
    17
  5. hust0

    hust0 Активный пользователь

    С нами с:
    6 июл 2013
    Сообщения:
    321
    Симпатии:
    8
    помогите вставить в код :p
     
  6. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    HTML:
    1. <!DOCTYPE html>
    2. <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
    3. $(document).ready(function(){
    4.     $("button").click(function(){
    5.         $("p").toggle('300');
    6.     });
    7. });
    8. </head>
    9.  
    10. <button>Toggle between hiding and showing the paragraphs</button>
    11.  
    12. <p>This is a paragraph with little content.</p>
    13. <p>This is another small paragraph.</p>
    14.  
    15. </body>
    16. </html>
     
  7. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Чур меня, чур. Браузеры уже тысячу лет умеют в CSS3-transitions. Легкая нативная анимация, с аппаратным ускорением. Жиквери-анимации давно уже надо на свалку времен вынести.
    --- Добавлено ---
    Это потому, что ты переключаешь display. Это не анимируемое свойство объекта. Тут ничего не поделать. Надо делать через прозрачность или еще как угодно. Тольео не забудь выставить свойство transition у изменяемого объекта.
     
  8. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    @Fell-x27, да. Я сам им пользуюсь. Но, мне почему то стало лень объяснять, и как любят все дал решение на этой библиотеке)).
     
  9. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Вот, чудеса современных технологий, без капли JS. https://jsfiddle.net/58kmfmss/
    Надо мышку навести на красный див.
     
  10. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    @Fell-x27, ага, с наведением все проще. Ну а если кликать, то уже нужен js. Даже если так, с transition все довольно просто получается сделать.
     
  11. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Я тя умоляю, просто то, что происходит в :hover вынести в обработчик клика. Это всяко не рассчитывание массива коэффициентов в соответствии с кривой, определяющей изменение скорости анимации, чтобы потом, по таймеру домнажать эти коэффициенты на текущее значение, разумеется, с учетом общей дельты. А ведь это именно то, что делает жиквери.
     
    mahmuzar нравится это.