scrollTop值未被更改

时间:2018-06-12 12:48:44

标签: scroll scrolltop onkeydown onkeyup

我正在尝试为keydown上的元素更改scrollTop的值,但每次返回0时。 这些是用于执行操作的方法:

autocompleteUp: function (autocompleteList) {
  if (this.current > 1) {
    this.current--
    this.select(this.node[this.current])
  }
}

select: function (el) {
  let index = [].indexOf.call(this.node, el)
  if (index === -1) return

  this.current = index
  console.log(this.id.scrollTop)

  let elHeight = el.scrollHeight
  let scrollTop = this.id.scrollTop
  let viewport = scrollTop + this.id.scrollHeight
  let elOffset = elHeight * this.current
  console.log('select', this.current, ' height', elHeight, ' viewport', viewport, ' elOffset', elOffset, ' scrollTop', scrollTop)

  if (elOffset < scrollTop || (elOffset + elHeight) > viewport) {
    // console.log(document.body.scrollTop)
    // document.documentElement.scrollTop = elOffset
    console.log(this.id.scrollTop)
    this.id.scrollTop = elOffset
    console.log(this.id.scrollTop)
  }
}

This is how console look

0 个答案:

没有答案