javascript - 我想为每个滚动CSS更改文本

标签 javascript jquery html

我正在尝试更改HTML和CSS个人工作中的文本。
我想更改“ a”中的文字。当我向下滚动页面时,选择“ alessi”。当我向上滚动时。

这是我的实际代码,但它只更改一次文本:

$(document).ready(function() {
  $(window).scroll(function() {
    if ($(this).scrollTop() > 100) {
      $("#header__logo").text("alessi.");
    } else {
      $("#header__logo").text("a.");
    }
  });
});

最佳答案

演示的css仅更新以平滑滚动



$(document).ready(function() {

  for (var i = 0; i < 100; i++) $('body').append('<br />');
  $('body').append('<div>');

  $(window).scroll(function() {
    if ($(this).scrollTop() > 100) {
      $("#header__logo").text("alessi.");
    } else {
      $("#header__logo").text("a.");
    }
  });


  //   smooth scroll to div
  $(".smooth-scroll").on("click", function() {
    $("html,body").animate({
      scrollTop: $($(this).attr('href')).offset().top
    }, {
      queue: false,
      duration: 1200,
      easing: "easeInOutExpo"
    });
    return false;
  });



  $(window).scroll(); // trigger it on load
});

body {
  height: 800px;
}

#header__logo {
  position: fixed;
  width: 100px;
  left: 50%;
  padding: 15px;
  border: 2px solid black;
}

.fixed {
  position: fixed;
  padding: 15px;
  bottom: 0;
  right: 0;
}

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script>

<div id="header__logo"></div>



<div class="fixed">
  <a class="smooth-scroll" href="#top">top</a>
  <a class="smooth-scroll" href="#middle">middle</a>
  <a class="smooth-scroll" href="#bottom">bottom</a>
</div>


<h1 id="top">top</h1>

<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />

<h1 id="middle">middle</h1>

<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br
/><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />

<h1 id="bottom">bottom</h1>

关于javascript - 我想为每个滚动CSS更改文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60564967/

相关文章:

javascript - 使用 ChangeDetectorRef 检测组件状态变化以便与 Material 步进器一起步进?

javascript - 如果子 div 不包含子 div,则隐藏父 div

html - 在多列中按字母顺序列出固定数量的元素

javascript - jQuery 追加/添加隐藏 div 到 jQuery 对话框

javascript - sessionStorage 不适用于 iphone 6 上的 safari - 非私有(private)模式

c# - 需要一个带有用户反馈的 ASP.NET MVC 长时间运行的进程

javascript - bootstrap 切换点击并显示数据 3 次时出错

javascript - Material Design Lite - JS 不应用事件监听器

javascript - OAuth 2.0 token 处理。是否有服务器 token 和客户端 token ?

javascript - 如何防止日期时间验证中的 future 年份?