0

有人能告诉我为什么在以下代码的第 5 行中使用数组索引吗?“#agree”指的是一个复选框,“#terms”指的是一个文本框。目的是在单击复选框之前确定用户是否已滚动到文本框的底部。谢谢。

$(document).ready(function() {
  $('#agree').attr('disabled', 'disabled');

  $('#terms').scroll(function() {
    var textarea_height = $(this)[0].scrollHeight;
    var scroll_height = textarea_height - $(this).innerHeight();

    var scroll_top = $(this).scrollTop();

    if (scroll_top == scroll_height){
      $('#agree').removeAttr('disabled');
    }
  });
});
4

1 回答 1

2

那是因为scrollHeight它是一个 DOM 元素属性。

jQuery 对象也是如此$(this),并且$(this)[0]是它下面的 DOM 元素(您也可以使用.get(0)代替[0]

this.scrollHeight- 这应该与$(this)[0].scrollHeight

于 2012-05-24T23:19:28.780 回答