javascript - 滚动到下一个 div 时如何更改 div 的文本

标签 javascript jquery html css

我在 Stack Overflow 上寻找解决方案,但我找不到适合我的元素的解决方案。

我想做的是更改 H1 中的文本,该文本的标题与用户所在的页面部分相关。例如,它可以说第 1 节,然后当您向下滚动时,它会变为第 2 节。我需要这样做,因为它是位于固定导航栏下方的固定标题,它应该始终存在。因此,当下一个 div 位于页面顶部时,拥有一个可以更改其内容的解决方案正是我所需要的。

<div id="sticky-anchor"></div>
<div id="sticky" class='a1'><h1 class='titleMusic noSelect'>Arcade Fire</div>

这就是 HTML

function sticky_relocate() {
var window_top = $(window).scrollTop();
var div_top = $('#sticky-anchor').offset().top;
if (window_top > div_top) {
    $('#sticky').addClass('stick');
} 
else {
    $('#sticky').removeClass('stick');
}
}

$(function () {
    $(window).scroll(sticky_relocate);
    sticky_relocate();
    });

这就是当 Div 到达页面顶部时使 Div 固定在页面顶部的 Javascript。当 div 第 2 部分到达页面顶部时,我需要将文本“Arcade Fire”更改为第 2 部分(现在会做)。

最佳答案

你可以在滚动事件中尝试这样的事情

if($(window).scrollTop() > $('section_1').offset().top 
   && $(window).scrollTop() < $('section_1').offset().top + $('section_1').outerHeight(true)
){
   $('#sticky > h1').text('Section 1');
}

Working Demo

关于javascript - 滚动到下一个 div 时如何更改 div 的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34483314/

相关文章:

javascript - 是否可以在选择框更改时设置/更新 jCrop 纵横比?

css - 将屏幕分成两部分,宽度不同

javascript - 如何使用 javascript 使按钮仅在用户使用 IE 浏览时隐藏

将商品添加到购物车的 JavaScript 已损坏

javascript - Jquery slideUp 和 slideDown 使用 Transit js

javascript - 在免费 jqGrid 中添加/编辑/删除一行

javascript - 如何从 slider 中删除 html 代码?

html - flex-start 和 baseline 有什么区别?

javascript - 全部删除按钮(带 Canvas 的绘画应用程序)

javascript - 重叠jquery鼠标悬停事件