Друзья, у меня 2-ой код не работал, поэтому я его откорректировала. Кроме того, мне нужно было, чтобы он рисовался сверху вниз, а не сбоку (у меня получалось, что данный код (исправленный) рисовал снизу вверх. Если у кого-то такая же проблема с кодом - вот мой код. Вдруг, кому-то окажется полезным document.addEventListener('DOMContentLoaded', function() { const svg = document.querySelector("#svgPath"); const length = svg.getTotalLength(); svg.style.strokeDasharray = length; svg.style.strokeDashoffset = length; window.addEventListener("scroll", function () { const scrollY = window.scrollY || window.pageYOffset; const scrollPercent = scrollY / (document.documentElement.scrollHeight - window.innerHeight); const draw = length * scrollPercent * 1.5; svg.style.strokeDashoffset = draw - length; }); });
Делаю отпись в комментариях, это годнота. Мне было прям интересно посмотреть, как это работает и как это достичь. Плюс - хорошо подано. Реапектую и буду следить за каналом
Супер идея! Автор спасибо за реализацию) единственное в чем трудность возникла - нет параметра отсрочки старта анимации по скролу. Только скорость воспроизведения. Так что я от себя немного изменила код, теперь можно выставить отсрочку анимации в процентах от всей длины страницы $(document).ready(function () { const svg = document.getElementById("svgPath"); const length = svg.getTotalLength(); svg.style.strokeDasharray = length; svg.style.strokeDashoffset = length; // Задаем отсрочку в процентах от высоты страницы const startOffsetPercent = 10; // Например, 10% window.addEventListener("scroll", function () { const windowHeight = document.documentElement.clientHeight; const startOffset = (windowHeight * startOffsetPercent) / 100; const scrollY = window.scrollY || window.pageYOffset; const scrollPosition = Math.max(0, scrollY - startOffset); const scrollpercent = scrollPosition / (document.documentElement.scrollHeight - windowHeight); const draw = length * scrollpercent; svg.style.strokeDashoffset = length - draw; }); }); *строго код не судите, дополнять помогал chatGPT) возможны ошибки, если есть что добавить - велкоме))
я прям новичок, модно сказать неделю увлеченно что делаю. и благодаря вашему уроку у меня получилась прорисовка линии, я была в таком восторге. ПРОСТО РЕСПЕК....
Поставила первый и третий скрипт (по триггеру). Первый отлично работает, а с третьим скриптом картинка начала стираться, а не рисоваться. В чем проблема не могу понять.
Урок крутой, спасибо! Но, как у многих, в первом примере анимации, по скроллу, есть проблема, что пока долистаешь до нужного блока, линия уже отрисована. Пробовала воспользоваться советами других - не помогло, к сожалению. а так все получилось с первого раза)
большое спасибо!!!!!!! Но может кто-нибудь помочь, как сделать чтобы линия при прокрутке вниз появлялась, как тропинка. А то у меня наоборот она исчезает. И куда вставлять значения, чтобы линия стала пунктирной 🙏 Если изменю строчку " svg.style.strokeDasharray = 10, 10;" То линия перестает рисовать и прокручивается на месте, не исчезая . КАк это можно исправить ? 🙏🙏🙏🙏
Почему, когда я дохожу до нужного блока, линия уже больше чем на половину отрисована? Также при увеличении скорости с 2 и выше, траектория движения меняется и линия двигается снизу-вверх, а не наоборот. Кто-то сталкивался с данной проблемой и знает, как исправить?
Здравствуйте! У меня есть вопрос. Я по вашему инструкцию сделала анимацию цифр, отлично получилось спасибо🥳 теперь в другой блок хотела добавить эффект рисования. Все по коду вроде правильно, но не сработало и анимация цифры тоже не работает. Вопрос: если в одном коде что то не правильно, вся анимация по коду не сработает?
- Рисование по скролу. Не понятно как добиться этого эффекта когда элемент на 6-7 блоке. Пока до туда долистываешь там уже все нарисовалось. Как-то можно по тригеру это сделать?
Привет! Подскажите, в чем может быть причина? Сделала по уроку, не рисует линию. Просто картинкой отображается сразу, шейп скрыт, как по видео. Прописала класс шейпу и в скрипте все заменила. Не работает. Вставил обычной картинкой. И намека нет на анимацию(
Очень классная идея! Но почему-то на одном сайте удалось реализовать, а на другом делаю всё так же, но ни один из трёх кодов не работает. Сейчас пробую даже на совершенно пустой странице. И не работает больше(
Друзья, у меня 2-ой код не работал, поэтому я его откорректировала. Кроме того, мне нужно было, чтобы он рисовался сверху вниз, а не сбоку (у меня получалось, что данный код (исправленный) рисовал снизу вверх. Если у кого-то такая же проблема с кодом - вот мой код. Вдруг, кому-то окажется полезным
document.addEventListener('DOMContentLoaded', function() {
const svg = document.querySelector("#svgPath");
const length = svg.getTotalLength();
svg.style.strokeDasharray = length;
svg.style.strokeDashoffset = length;
window.addEventListener("scroll", function () {
const scrollY = window.scrollY || window.pageYOffset;
const scrollPercent = scrollY / (document.documentElement.scrollHeight - window.innerHeight);
const draw = length * scrollPercent * 1.5;
svg.style.strokeDashoffset = draw - length;
});
});
спасибо :)
Делаю отпись в комментариях, это годнота. Мне было прям интересно посмотреть, как это работает и как это достичь. Плюс - хорошо подано. Реапектую и буду следить за каналом
Спасибо :) дальше будет больше
Супер идея! Автор спасибо за реализацию) единственное в чем трудность возникла - нет параметра отсрочки старта анимации по скролу. Только скорость воспроизведения. Так что я от себя немного изменила код, теперь можно выставить отсрочку анимации в процентах от всей длины страницы
$(document).ready(function () {
const svg = document.getElementById("svgPath");
const length = svg.getTotalLength();
svg.style.strokeDasharray = length;
svg.style.strokeDashoffset = length;
// Задаем отсрочку в процентах от высоты страницы
const startOffsetPercent = 10; // Например, 10%
window.addEventListener("scroll", function () {
const windowHeight = document.documentElement.clientHeight;
const startOffset = (windowHeight * startOffsetPercent) / 100;
const scrollY = window.scrollY || window.pageYOffset;
const scrollPosition = Math.max(0, scrollY - startOffset);
const scrollpercent = scrollPosition / (document.documentElement.scrollHeight - windowHeight);
const draw = length * scrollpercent;
svg.style.strokeDashoffset = length - draw;
});
});
*строго код не судите, дополнять помогал chatGPT) возможны ошибки, если есть что добавить - велкоме))
Благодарю за такое доходчивое видео! Все с первого раза получилось!
Спасибо!!! давно искала доступным языком
Рад помочь!
Классный урок! Спасибо)
Простой, но эффектный прием
Согласен, мне тоже очень нравится)
У вас просто топ контент 🎉сколько не искала на ютубе такой инфы нигде нет . Очень ждём новых видео
спасибо большое! очень помогло)
На здоровье!
я прям новичок, модно сказать неделю увлеченно что делаю. и благодаря вашему уроку у меня получилась прорисовка линии, я была в таком восторге. ПРОСТО РЕСПЕК....
Все работает. Эффект супер! Прямо лег в мой проект. Спасибо!
Спасибо! Интересный эффект
Спасибо. Полезно👍
Рад помочь)
Спасибо! Попробую обязательно, интересный эффект
Спасибо!👍🏻👍🏻👍🏻
Огромное спасибо за видео! Очень полезное и крутое!
Поставила первый и третий скрипт (по триггеру). Первый отлично работает, а с третьим скриптом картинка начала стираться, а не рисоваться. В чем проблема не могу понять.
очень крутая штука, спасибо!
Спасибо!
Оооочень полезно! Спасибо!
спасибо
Урок крутой, спасибо! Но, как у многих, в первом примере анимации, по скроллу, есть проблема, что пока долистаешь до нужного блока, линия уже отрисована. Пробовала воспользоваться советами других - не помогло, к сожалению. а так все получилось с первого раза)
Супер! Спасибо!
Классный контент🔥
Всё делала по видео, а всё равно анимации линии нет на опубликованной версии, уже всю голову сломала почему((
Пушка! Спасибо)
большое спасибо!!!!!!! Но может кто-нибудь помочь, как сделать чтобы линия при прокрутке вниз появлялась, как тропинка. А то у меня наоборот она исчезает. И куда вставлять значения, чтобы линия стала пунктирной 🙏 Если изменю строчку " svg.style.strokeDasharray = 10, 10;" То линия перестает рисовать и прокручивается на месте, не исчезая . КАк это можно исправить ? 🙏🙏🙏🙏
спасибо!!
Почему, когда я дохожу до нужного блока, линия уже больше чем на половину отрисована? Также при увеличении скорости с 2 и выше, траектория движения меняется и линия двигается снизу-вверх, а не наоборот. Кто-то сталкивался с данной проблемой и знает, как исправить?
Август 2024, работает у кого-нибудь? Месяца три назад делала, все было идеально, сейчас не работает ни один код
видео -огонь! но у меня подпись работает в обратном порядке. сначала видна, потом стирается и больше не появляется. не знаю, как исправить
2024 год, код по скроллу и по тригеру у меня не завелся. а так классный эффект
Спасибо, подписался! Можно ли такое сделать с пунктирной линией?
Спасибо, подписалась
Людиии подскажите, почему у меня в фигме нету COPY AS SVG? Уже замучилась, пытаюсь повторить
На пк все срабатывает по тригеру, а на моб, версии стирается в обратную сторону. Как это можно пофиксить? буду признателен и спасибо за видео
Здравствуйте!
У меня есть вопрос. Я по вашему инструкцию сделала анимацию цифр, отлично получилось спасибо🥳 теперь в другой блок хотела добавить эффект рисования. Все по коду вроде правильно, но не сработало и анимация цифры тоже не работает.
Вопрос: если в одном коде что то не правильно, вся анимация по коду не сработает?
- Рисование по скролу. Не понятно как добиться этого эффекта когда элемент на 6-7 блоке. Пока до туда долистываешь там уже все нарисовалось. Как-то можно по тригеру это сделать?
поиграйте с формулой, я сделала для своего сайта вот так const draw = length * 2.5 * (scrollpercent*2); и стало рисоваться на моих глазах )))
@@TaniyLysenko помогло!! спасибо большое)
Привет! Подскажите, в чем может быть причина? Сделала по уроку, не рисует линию. Просто картинкой отображается сразу, шейп скрыт, как по видео. Прописала класс шейпу и в скрипте все заменила. Не работает. Вставил обычной картинкой. И намека нет на анимацию(
Очень классная идея! Но почему-то на одном сайте удалось реализовать, а на другом делаю всё так же, но ни один из трёх кодов не работает. Сейчас пробую даже на совершенно пустой странице. И не работает больше(
А можно сделать такую же анимацию, но справа налево?
Срабатывает только одна анимация на страницу(
Слушай, анимацию простого появления линий, можно делать также ? Или это можно сделать простой SBT анимацией ?
очень большое спасибо! круто, но у меня почему-то скрипт по тригерру работает в обратную сторону - он линию стирает((( что может быть не так?
мне помогло вот так сделать в конце svg.style.strokeDashoffset = draw; вместо length - draw
Ничего не понятно, но очень интересно! :) А откуда всё-таки взялись скрипты? Я еще только погружаюсь вл все это ..
Спасибо
Спасибо