How to make text appear on scroll in html

前端 未结 5 2004

Hello, I want a certain text to appear when I scroll past it or when I scroll until the point where the text is. The effect when appearing should be somewhat like the first effe

5条回答
  •  遥遥无期
    2021-02-02 18:20

    I like this:

    var doc = document, dE = doc.documentElement, bod = doc.body;
    function E(e){
      return doc.getElementById(e);
    }
    function xy(e, d){
      if(!d)d = 'Top';
      d = 'offset'+d;
      var r = e[d];
      while(e.offsetParent){
        e = e.offsetParent; r += e[d];
      }
      return r;
    }
    function x(e){
      return xy(e, 'Left');
    }
    function y(e){
      return xy(e);
    }
    var txt = E('theId'), txtS = txt.style;
    onscroll = function(){
      var left = dE.scrollLeft || bod.scrollLeft || 0;
      var top = dE.scrollTop  || bod.scrollTop  || 0;
      var w = innerWidth || dE.clientWidth || bod.clientWidth;
      var h = innerHeight || dE.clientHeight || bod.clientHeight;
      if(top > y(txt)-h){
        txtS.display = 'none';
      }
      else{
        txtS.display = 'block';
      }
    }
    

    I left the left stuff in there, just in case, but you can probably remove it.

提交回复
热议问题