Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dotlottie sometimes skips frames and lags Type: Bug #99

Open
1 task done
IchUseKomplexe opened this issue Jan 10, 2024 · 3 comments
Open
1 task done

Dotlottie sometimes skips frames and lags Type: Bug #99

IchUseKomplexe opened this issue Jan 10, 2024 · 3 comments

Comments

@IchUseKomplexe
Copy link

IchUseKomplexe commented Jan 10, 2024

Overview

Hey,
so I've added a preloader to my shopify website and used the dotlottie animation. It's only shown once in a session and only on the main page.
Via HTML I preload the .lottie file and the animation plays, after the DOM Content has completely loaded, to ensure, the timer syncs with the animation.

My html:

<div id="loader">
<dotlottie-player background="transparent" id="lottie-loader" speed="1" style="width: 50%; height: 50%" direction="1" mode="normal" loop autoplay></dotlottie-player>
</div>

<link rel="preload" fetchpriority="high" href="https://lottie.host/a276f20a-2888-4dc0-a098-2edf62682b4c/WtaeCDO9ti.lottie" type="application/json">

My javascript

preloader.js

  const loader = document.getElementById("loader");
  $('#loader').hide();
}

$(document).ready(function() {
  if (document.cookie.indexOf("preloaderShown=true") === -1) {
      document.cookie = "preloaderShown=true; path=/";
    window.onload = function() {
      const player = document.querySelector('dotlottie-player');
    player.load('https://lottie.host/a276f20a-2888-4dc0-a098-2edf62682b4c/WtaeCDO9ti.lottie');
      setTimeout(function() {
      hidePreloader();
    }, 3100);
    };
    
The animation hides, after the preloader has completely loaded.

} else {
    // If the preloader has already been shown in this session, hide it immediately
    $('#loader').hide();
  }
});

The Problem

Sometimes the animation skips some frames and lags, especially on mobile devices. It doesn't matter if your connection is slow or fast, since the animation only loads after the page is completely loaded.

How it looks when it bugs:

RPReplay_Final1704895547.MP4

How it should look like:

RPReplay_Final1704895617.MP4

This is also reproduceable on desktop. Sometimes it lags, sometimes not. Hope some1 can help me.

Consuming repo

What repo were you working in when this issue occurred?

<script src="https://unpkg.com/@dotlottie/player-component@latest/dist/dotlottie-player.mjs" type="module"></script>

...

Labels

  • Add the Type: Bug label to this issue.
@theashraf
Copy link
Member

@IchUseKomplexe I think you're using the @dotlottie/player-component, you can try to use the @lottiefiles/dotlottie-web instead

Here is a codesandbox example you can refer to for the usage
https://codesandbox.io/p/devbox/lottiefiles-dotlottie-web-basic-example-tcy3rv

Copy link
Contributor

This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs.

@github-actions github-actions bot added the stale label Mar 13, 2024
@theashraf
Copy link
Member

@IchUseKomplexe, I wonder if you've tried migrating to @lottiefiles/dotlottie-web. Any updates?

@github-actions github-actions bot removed the stale label May 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants