javascript - ScrollMagic - 进度条

标签 javascript jquery scrollmagic

我在需要显示进度条的站点上使用 scrollMagic 库。该栏将显示用户在页面上的位置。进度条的宽度会随着用户向上或向下滚动而改变。我似乎无法让它与 scrollMagic 库一起使用。这是我在其他事情中尝试过的。谢谢!

var controller = new ScrollMagic.Controller();
$(function progressBar() {
  var tween = TweenMax.fromTo("#progress", 1, {
    width: "0%"
  }, {
    width: "100%"
  });
  var scene = new ScrollMagic.Scene({
      triggerElement: ".header-wrap",
      duration: "100%"
    })
    .setTween(tween)
    .addTo(controller);
});

最佳答案

我花了一些时间弄清楚,希望它能帮助正在寻找解决方案的人。

你将不得不使用滚动魔法的进度方法。

.on("progress", function(e) {
    var progressvalue = Math.floor(100 * e.progress);
    $('.scroll-progress').css('width',progressvalue +"%");
})

这是完整的代码,看起来如何

var pin = new ScrollMagic.Scene({
    triggerHook: "onLeave",
    duration: "1100%",
    triggerElement: "#pin"
})
.setPin("#pin")
.setTween(tl)
.setClassToggle("#pin", "active")
// Add this code
.on("progress", function(e) {
    var progressvalue = Math.floor(100 * e.progress);
    $('.scroll-progress').css('width', progressvalue + "%");
})
.addTo(controller);

在 html 中添加一个要显示进度的 div。

<div class="scroll-progress" style="width:0%; height:5px; background:#0090c6; position:fixed; bottom:0; left:0; z-index:9999"></div>

关于javascript - ScrollMagic - 进度条,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31124521/

相关文章:

javascript - 为什么 Internet Explorer 会中断弹出窗口中的每个单词?

jQuery-modal ajax 子项中的 Javascript 失败

javascript - jQuery ScrollMagic 时间线最大不工作

window - 带有 scrollmagic 的 Nuxtjs 给了我 "window is not defined"

javascript - 在不同的 ScrollMagic 场景中重复使用补间

javascript - Angularjs 与 browsersync post 方法作为选项发送

javascript - JQuery 附加 '[object, Object]' 而不是图像

javascript - JWT:在到期后一分钟或更短时间内将新 token 传递给客户端。坏主意还是好主意?

javascript - 无法在 jquery 移动页面中初始化 jQuery 旋钮

jquery - 如何删除第一个标签之前未包含的脏文本