Maison >interface Web >js tutoriel >Comment utiliser JavaScript pour obtenir l'effet d'invite de chargement consistant à charger automatiquement lors du défilement vers le bas de la page ?

Comment utiliser JavaScript pour obtenir l'effet d'invite de chargement consistant à charger automatiquement lors du défilement vers le bas de la page ?

WBOY
WBOYoriginal
2023-10-18 11:43:411160parcourir

JavaScript 如何实现滚动到页面底部自动加载的加载提示效果?

JavaScript Comment implémenter l'effet d'invite de chargement lors du défilement vers le bas de la page ?

Le défilement infini est une fonctionnalité très populaire dans le développement Web moderne. Lorsque les utilisateurs font défiler vers le bas de la page, davantage de contenu se charge automatiquement sans avoir à cliquer sur des boutons ou des liens. Ce chargement dynamique offre une meilleure expérience utilisateur, permettant aux utilisateurs de parcourir davantage de contenu de manière transparente. Cet article explique comment utiliser JavaScript pour obtenir l'effet d'invite de chargement consistant à charger automatiquement lors du défilement vers le bas de la page.

Pour obtenir l'effet de chargement automatique du défilement vers le bas de la page, nous devons écouter l'événement de défilement de la fenêtre. Lorsque vous faites défiler vers le bas de la page, déclenchez la logique pour charger un nouveau contenu.

Tout d'abord, nous pouvons utiliser l'événement window.onscroll pour écouter le défilement de la fenêtre. Cet événement est déclenché chaque fois que la fenêtre défile. Nous pouvons écrire une logique dans le gestionnaire d’événements pour déterminer si la page a défilé vers le bas. window.onscroll 事件监听窗口的滚动。每当窗口滚动时,该事件会被触发。我们可以在该事件的处理函数中编写逻辑,以判断是否滚动到了页面底部。

window.onscroll = function() {
  // 获取当前文档的高度
  var documentHeight = document.documentElement.offsetHeight;

  // 获取窗口的可视高度
  var windowHeight = window.innerHeight;

  // 获取滚动条的位置
  var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;

  // 判断是否滚动到了页面底部
  if (scrollTop + windowHeight === documentHeight) {
    // 触发加载新内容的逻辑
    loadMoreContent();
  }
}

在上述代码中,我们使用了 document.documentElement.offsetHeight 获取当前文档的高度,使用 window.innerHeight 获取窗口的可视高度,使用 document.documentElement.scrollTop || document.body.scrollTop 获取滚动条的位置。通过判断滚动条的位置和窗口的可视高度是否等于文档的高度,我们可以判断是否滚动到了页面底部。

当滚动到页面底部时,可以在 loadMoreContent 函数中编写加载新内容的逻辑。例如,可以通过 Ajax 请求从服务器获取更多的数据,并将数据添加到页面上。

以下是一个简单的示例,演示如何使用 JavaScript 实现滚动到页面底部自动加载的加载提示效果:

<!DOCTYPE html>
<html>
<head>
  <title>无限滚动加载示例</title>
  <script>
    window.onscroll = function() {
      var documentHeight = document.documentElement.offsetHeight;
      var windowHeight = window.innerHeight;
      var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;

      if (scrollTop + windowHeight === documentHeight) {
        loadMoreContent();
      }
    }

    function loadMoreContent() {
      // 模拟从服务器获取新数据的过程,延时1秒钟
      setTimeout(function() {
        var content = document.createElement('div');
        content.innerText = '加载更多的内容...';
        document.body.appendChild(content);
      }, 1000);
    }
  </script>
</head>
<body>
  <h1>示例页面</h1>
  <div>
    <p>这里是初始内容...</p>
  </div>
</body>
</html>

在上述示例中,当用户滚动到页面底部时,会在页面上添加一个新的 dc6dce4a544fdca2df29d5ac0ea9906brrreee

Dans le code ci-dessus, nous utilisons document.documentElement.offsetHeight pour obtenir la hauteur du document actuel, utilisons window.innerHeight pour obtenir la hauteur visuelle de la fenêtre , et utilisez document.documentElement.scrollTop || document.body.scrollTop Obtient la position de la barre de défilement. En jugeant si la position de la barre de défilement et la hauteur visible de la fenêtre sont égales à la hauteur du document, on peut juger si le défilement a atteint le bas de la page.

Lorsque vous faites défiler vers le bas de la page, vous pouvez écrire la logique pour charger un nouveau contenu dans la fonction loadMoreContent. Par exemple, vous pouvez faire une requête Ajax pour obtenir plus de données du serveur et ajouter les données à la page. 🎜🎜Ce qui suit est un exemple simple qui montre comment utiliser JavaScript pour implémenter l'effet d'invite de chargement du chargement automatique lors du défilement vers le bas de la page : 🎜rrreee🎜Dans l'exemple ci-dessus, lorsque l'utilisateur fait défiler vers le bas de la page , un nouvel élément dc6dce4a544fdca2df29d5ac0ea9906b, montrant le chargement de plus de contenu. 🎜🎜Avec l'exemple de code ci-dessus, nous pouvons obtenir l'effet d'invite de chargement consistant à charger automatiquement lors du défilement vers le bas de la page. Bien entendu, la mise en œuvre spécifique variera en fonction des besoins du projet, et vous pourrez la modifier et l'étendre en fonction de vos propres besoins. J'espère que cet article vous aidera à comprendre comment utiliser JavaScript pour obtenir l'effet d'invite de chargement consistant à charger automatiquement lors du défilement vers le bas de la page. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn