Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.12.2019, 21:28
Кандидат Javascript-наук
Отправить личное сообщение для Lefseq Посмотреть профиль Найти все сообщения от Lefseq
 
Регистрация: 19.04.2019
Сообщений: 124

Как ускорить движение слайдера?
Здравствуйте. Подскажите, как ускорить движение слайдера в данном коде? Выставил максимум, но смена строк все-равно не достаточно быстрая.

<ul id="ticker_02" class="ticker">
        <li>
            первая строка
        </li>
        <li>
            вторая строка
        </li>
        <li>
            третья строка
        </li>
        <li>
            четвертая строка
        </li>
                <li>
            пятая строка
        </li>
    </ul>


function tick2(){
        $('#ticker_02 li:first').slideUp( function () { $(this).appendTo($('#ticker_02')).slideDown(); });
    }
    setInterval(function(){ tick2 () }, 1);
Ответить с цитированием
  #2 (permalink)  
Старый 11.12.2019, 21:45
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от Lefseq
Выставил максимум
Где?
Ответить с цитированием
  #3 (permalink)  
Старый 11.12.2019, 21:56
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Lefseq,
https://javascript.ru/forum/dom-wind...tml#post430374
поиск по форуму бесконечная
Сообщение от рони
лучше забыть что есть setInterval
Ответить с цитированием
  #4 (permalink)  
Старый 12.12.2019, 07:20
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,121

Сообщение от рони
поиск по форуму бесконечная
Расширяется список "терминов"...
Ответить с цитированием
  #5 (permalink)  
Старый 12.12.2019, 10:36
Кандидат Javascript-наук
Отправить личное сообщение для Lefseq Посмотреть профиль Найти все сообщения от Lefseq
 
Регистрация: 19.04.2019
Сообщений: 124

Сообщение от рони
https://javascript.ru/forum/dom-wind...tml#post430374
Рони, а можете превратить эту карусель в вертикальную, убрать стрелки, убрать паузу при наведении курсора и паузу между движениями?
Ответить с цитированием
  #6 (permalink)  
Старый 12.12.2019, 14:19
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

бегущая строка вертикально
Lefseq,
на основе варианта от Malleys,
https://javascript.ru/forum/dom-wind...tml#post514440
<text-display>
    <img src="https://picsum.photos/300/100?1">
    <img src="https://picsum.photos/300/100?2">
    <img src="https://picsum.photos/300/100?3">
    <img src="https://picsum.photos/300/100?4">
    <img src="https://picsum.photos/300/100?5">
    <img src="https://picsum.photos/300/100?6">
    <img src="https://picsum.photos/300/100?7">
    <img src="https://picsum.photos/300/100?8">
    <img src="https://picsum.photos/300/100?9">
</text-display>

<style>

text-display {
    background: linear-gradient(to bottom, #333, black);
    background-color: #111;
    color: white;
    font: 900 1em / 1.5 monospace, system-ui;
    border-radius: 0.2em;
    white-space: nowrap;
    margin: 0.2em 0;
    width: 300px;
    height: 250px;
}

</style>

<script>

class TextDisplay extends HTMLElement {
    constructor() {
        super();

        const shadow = this.attachShadow({ mode: "closed" });
        const document = shadow.ownerDocument;
        const firstElement = document.createElement("div");
        const secondElement = document.createElement("div");
        const slot = document.createElement("slot");
        const observer = new MutationObserver(mutationHandler);

        shadow.innerHTML = `<style>
            :host {
                display: flex;
                overflow: hidden;
                flex-direction: column;
            }
            :host > div {
                min-width: 100%;
                will-change: transform;
                animation: text-display var(--text-display-duration, 15s) linear infinite;
                animation-direction: inherit;
                display: flex;
                flex: 1 0 auto;
                text-align: center;
                flex-direction: column;
            }
            :lang(ar), :lang(he) {
                animation-direction: reverse;
            }
            @keyframes text-display {
                to {
                    transform: translateY(-100%);
                }
            }
        </style>`;

        firstElement.append(slot);
        shadow.append(firstElement, secondElement);
        mutationHandler();

        observer.observe(this, {
            subtree: true,
            characterData: true,
            attributes: true,
            childList: true
        });

        function mutationHandler() {
            secondElement.textContent = "";

            for(const assignedNode of slot.assignedNodes())
                secondElement.append(assignedNode.cloneNode(true));
        }
    }
}

customElements.define("text-display", TextDisplay);

</script>
Ответить с цитированием
  #7 (permalink)  
Старый 12.12.2019, 14:32
Кандидат Javascript-наук
Отправить личное сообщение для Lefseq Посмотреть профиль Найти все сообщения от Lefseq
 
Регистрация: 19.04.2019
Сообщений: 124

рони,
То что нужно! Спасибо большое.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как ускорить загрузку скрипта Искорка Элементы интерфейса 5 27.11.2017 12:52
JSON как хранить как парсить jay-S Общие вопросы Javascript 1 26.05.2017 07:50
Мотоциклисты есть? l-liava-l Оффтопик 13 04.07.2014 13:35
как с помощью animate() создать движение кнопки в правый верхний угол? katiandra4ka jQuery 1 19.05.2014 22:25
как сделать плавное движение Jquery.animate Lodas Общие вопросы Javascript 9 19.05.2014 21:57