zoukankan      html  css  js  c++  java
  • Uncaught TypeError: Cannot read property 'offsetTop' of undefined at VueComponent.handleScroll

    	    mounted() {
    			    window.addEventListener("scroll", this.handleScroll);
    	    },
    	    beforeDestroy() {
                        window.removeEventListener("scroll",this.handleScroll)
                },
            handleScroll() {
    	    var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
    	    offsetTop = this.$refs.searchBar.offsetTop;
    	    problemTop = this.$refs.problem.offsetTop;
    	    claimsTop =  this.$refs.claims.offsetTop;
    	    if(scrollTop > offsetTop) {
    			this.searchBarFixed = true;
    	    } else {
    			this.searchBarFixed = false;
    	   }
    	   if(scrollTop >= problemTop && scrollTop < claimsTop) {
    			this.current = 1;
    	   } else if(scrollTop >= claimsTop) {
    			this.current = 2;
    	   } else {
    			this.current = 0;
    	   }
    	},
    

    说明

    报offsetTop这个错误,是因为我在页面加载的时候给window添加了scroll事件,但是一定要记得销毁,要不然所有的页面都会添加这个scroll事件,在这个页面销毁前移除这个事件就解决了

  • 相关阅读:
    算法训练 接水问题
    算法训练 数组排序去重
    算法训练 A+B Problem
    算法训练 采油区域
    算法训练 会议中心
    JS高级
    JS基础操作
    JavaScript入门(基础)
    表格与表单
    音频与视频
  • 原文地址:https://www.cnblogs.com/lml-lml/p/10145865.html
Copyright © 2011-2022 走看看