如何在到达锚标签时运行javascript函数?

时间:2013-06-06 16:58:24

标签: javascript jquery html twitter-bootstrap

传递网页板块时是否可以运行javascript function?我想要实现的是类似于Twitter Bootstrap的scrollspy。

3 个答案:

答案 0 :(得分:5)

您可以使用waypoints插件:

http://imakewebthings.com/jquery-waypoints/

  

Waypoints是一个jQuery插件,可以轻松执行一个函数   每当你滚动到一个元素。

答案 1 :(得分:4)

这是一个fiddle ,可以根据您可以根据需要自定义的逻辑在a元素上注册自定义事件来完成您要查找的行为。

在示例中,当a元素的位置在文档可见部分顶部的0到100范围内时触发事件。

JS

$(function() {
    $('a').on('reached', function() {
        alert('Reached ' + $(this).attr('id'));
    });
    $(document).on('scroll', function() {
        $('a').each(function() {
            var wt = $(window).scrollTop();
            var at = $(this).position().top;
            var dt = at - wt;
            if( dt >= 0 && dt < 100)
                $(this).trigger('reached');
        });
    });
})

希望它有所帮助。

答案 2 :(得分:3)

您可以使用jQuery的scrollTop函数。

您可以使用position()函数获取锚标记位置,并尝试将其与scrollTop返回值匹配。