javascript - Anchor Onclick Division Highlight

标签 javascript jquery html anchor

我制作了一个简单的网页,其中包含很多部分。所以为了直接导航到一个部门,我在上面放了一个 anchor :

<a href="#first">First</a><br/>
<a href="#second">Second</a><br/>
<a href="#third">Third</a>

为了平滑滚动,我使用了 javascript:

$('a').click(function(){
    $('html, body').animate({
        scrollTop: $( $(this).attr('href') ).offset().top
    }, 500);
    return false;
});

现在我想给选中的分区添加效果。因此,当用户单击 anchor 时,页面会平滑地滚动到该部门,并且所选部门会突出显示一秒钟。就像当我们在 Stack Overflow 收件箱中收到任何新闻时,我们会点击它;页面加载并且新闻项目在短时间内突出显示。

我想对我的页面做那件事。因为我有超过 18 个分区,而且它们都是相同的。所以有必要区分所选的分区。

这是 fiddle 的例子:Fiddle For the Code

如有任何帮助,我们将不胜感激。提前致谢。

最佳答案

在您的代码中 $('html, body') 返回 2 个元素,因此动画将触发两次。如果你包含 jquery.ui 你将能够做到这一点:

$('a').click(function(){
    var selector = $(this).attr('href');        
    $('html').animate({
        scrollTop: $(selector).offset().top
    }, 500,'',function(){
        $(selector).effect("highlight", {}, 1000);                             
    });
    return false;
});

JsFiddle

关于javascript - Anchor Onclick Division Highlight,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11936637/

相关文章:

javascript - 获取点击链接的 id 并将其传递给 JQuery

javascript - 如何使用函数回调来设置新创建的元素属性?

javascript - jQuery 如何遍历超过 1 个兄弟元素

jquery - 在 div 中查找 div 并将其删除?

javascript - 如何在子元素的页面加载时替换innerHTML?

html - 悬停时图像 map 品牌 Logo 更改

javascript - 如何呈现一个列表/网格行,就好像它是粘性的?

javascript - 在 Rails 5 中使用 'noty' js 库

javascript - Js - 如何每次都获取图像大小

javascript - 提交表单而不刷新页面并将输出加载到 html 中