机车滚动元素在实时服务器上崩溃和消失

问题描述

我使用机车滚动制作了一个网站,该网站在我上传到实时服务器之前运行良好。在实时服务器上,元素有时会相互碰撞,然后闪烁并消失,页脚也被切断。元素的位置似乎没有正确更新,因此滚动时出现了这个故障。

我认为这一定是加载问题,因为有时它很好,如果我调整浏览器的大小有时会修复它。可能我需要在加载元素后在滚动条上执行 update()。

我希望调整以下代码,以便它检查页面 DOM 是否已加载,但我不确定如何将其从超时更改为检查页面加载。

function smooth() {
    let scrollContainer = document.querySelector('your-selector');
    scroll = new LocomotiveScroll({
    el: scrollContainer,smooth: true
});

setTimeout(() => {
    scroll.update();
},500); 

解决方法

我们必须检测要加载的图像和大型资产您应该使用 imageLoaded 来检测所有图像加载,然后您必须更新滚动条,它应该可以正常工作

 const imagesLoaded = require("imagesloaded"); // import the library or can use cdn


  let scrollContainer = document.querySelector("[data-scroll-container]");

  var scroll;

  scroll = new LocomotiveScroll({
    el: scrollContainer,smooth: true,getSpeed: true,getDirection: true,offset:["15%",0]
  });




  /* update scroll (height) when all images are loaded */

  imagesLoaded(scrollContainer,{ background: true },function () {
    scroll.update();
  });

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...