Vue.js滚动高度返回0

时间:2019-05-21 05:49:07

标签: javascript vuejs2

我正在将vuejs2与codeigniter一起使用。

我已将以下内容添加到html

<div class="container">
    ...content here
</div>   

我有一个单独的scripts.js

script.js

new Vue({
 el: '.container',
 methods:{
    handleScroll:function(event){
      console.log("scrolled to", document.body.scrollTop);
      },
  },
created() {
 window.addEventListener("scroll", this.handleScroll,true);
},
});

正在尝试获取用户已滚动到y轴的位置,但一直保持为0。我错过了什么。 我已包含This Codepen

2 个答案:

答案 0 :(得分:1)

我认为您误解了scrollTop的用法。

要获取当前滚动位置,请改用window.scrollY

  console.log("scrolled to", window.scrollY);

答案 1 :(得分:0)

您应该使用mount()钩子而不是created()。

创建Vue组件时将执行created(),但这并不意味着DOM元素就在其中。因此,mount()就是您的Vue组件已创建并已经安装到DOM的时间。