javascript - 具有非 jQuery/框架构建的路点

标签 javascript jquery jquery-waypoints

我之前使用过 waypoints.js 几次,并取得了巨大的成功。使用如下示例的代码:

$(document).ready(function() {

    $('.section').waypoint(function() {
        $(this).toggleClass('in-view');
    },
    {offset: '65%'});
});

它是使用版本 jQuery Waypoints - v2.0.3 创建的。我试图在我继承的使用 Waypoints 4.0.1 的网站上使用相同的代码,但上面的代码不起作用,我认为这是因为该脚本是非 jQuery 版本.

所以我的问题是,如何在 noframework 构建中格式化/编写上述代码?

我对 jQuery 已经很挣扎了,所以下面的示例代码对我来说完全陌生!

var waypoint = new Waypoint({
  element: document.getElementById('waypoint'),
  handler: function(direction) {
    console.log('Scrolled to waypoint!')
  }
})

我如何用我猜的纯 JavaScript 编写 jQuery 脚本?有人可以解释一下吗?

提前致谢!

最佳答案

等效的内容如下:

var waypoints = document.querySelectorAll('.section');
for (var i = waypoints.length - 1; i >= 0; i--) {
    var waypoint = new Waypoint({
        element: waypoints[i],
        handler: function(direction) {
            this.element.classList.toggle('in-view');
        },
        offset: '65%',
    });
}

Waypoint 文档在这里非常具有描述性:http://imakewebthings.com/waypoints/guides/getting-started/

更新: Codepen example

关于javascript - 具有非 jQuery/框架构建的路点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47499053/

相关文章:

javascript - 如何检查添加的类(class)是否有视频然后播放

javascript - 使用jQuery获取垂直滚动的最大值

jquery - jQuery 中使用 every 和 函数的 $(this) 的意外范围

javascript - 更改AngularJS中的日期时间格式

javascript - 如何在javascript中获取元素的宽度

javascript - html 中可重复代码的可重用性

ajax - 在 Ajax 之后重新加载 AddToAny

javascript - 如果某个元素在视口(viewport)中存在 X 时间,如何触发函数?

javascript - Waypoint循环,退出循环后属性未定义

javascript - 仅编辑 javascript 以从图像数组添加幻灯片