Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在没有内容的情况下设置滚动条大小_Javascript_Html_Datagrid - Fatal编程技术网

Javascript 如何在没有内容的情况下设置滚动条大小

Javascript 如何在没有内容的情况下设置滚动条大小,javascript,html,datagrid,Javascript,Html,Datagrid,我正在尝试创建一个数据网格,在该网格中,我不会在开始时显示所有记录,而是希望在滚动时呈现这些记录。是否有一种方法可以根据我拥有的数据量设置一个滚动大小,并在用户滚动时更改dev中的数据 我知道有网格的存在,但我不想使用它们,我想知道有什么不同的方式来做到这一点 我已尝试查看滚动事件,但没有找到有关滚动方向或当前偏移量的任何信息。我能找到什么文件吗。甚至搜索一个技术名称也会对我有所帮助。您可以使用javascript和html搜索“无限滚动”。 You can search for a "infi

我正在尝试创建一个数据网格,在该网格中,我不会在开始时显示所有记录,而是希望在滚动时呈现这些记录。是否有一种方法可以根据我拥有的数据量设置一个滚动大小,并在用户滚动时更改dev中的数据

我知道有网格的存在,但我不想使用它们,我想知道有什么不同的方式来做到这一点

我已尝试查看滚动事件,但没有找到有关滚动方向或当前偏移量的任何信息。我能找到什么文件吗。甚至搜索一个技术名称也会对我有所帮助。

您可以使用javascript和html搜索“无限滚动”。
You can search for a "infinity scroll" with javascript and html.

EXAMPLE HTML: `<ul id='infinite-list'></ul>`
EXAMPLE CSS: `#infinite-list {
  /* We need to limit the height and show a scrollbar */
  width: 200px;
  height: 300px;
  overflow: auto;

  /* Optional, only to check that it works with margin/padding */
  margin: 30px;
  padding: 20px;
  border: 10px solid black;
}

/* Optional eye candy below: */
li {
  padding: 10px;
  list-style-type: none;
}
li:hover {
  background: #ccc;
}`

EXAMPLE JAVASCRIPT: `var listElm = document.querySelector('#infinite-list');

// Add 20 items.
var nextItem = 1;
var loadMore = function() {
  for (var i = 0; i < 20; i++) {
    var item = document.createElement('li');
    item.innerText = 'Item ' + nextItem++;
    listElm.appendChild(item);
  }
}

// Detect when scrolled to bottom.
listElm.addEventListener('scroll', function() {
  if (listElm.scrollTop + listElm.clientHeight >= listElm.scrollHeight) {
    loadMore();
  }
});

// Initially load some items.
loadMore();
`
HTML示例:`
    ` CSS示例:`#无限列表{ /*我们需要限制高度并显示滚动条*/ 宽度:200px; 高度:300px; 溢出:自动; /*可选,仅用于检查它是否适用于边距/填充*/ 利润率:30像素; 填充:20px; 边框:10px纯黑; } /*下面是可选的眼罩:*/ 李{ 填充:10px; 列表样式类型:无; } 李:悬停{ 背景:#ccc; }` JAVASCRIPT示例:`var listElm=document.querySelector('#infinite list'); //添加20个项目。 var-nextItem=1; var loadMore=函数(){ 对于(变量i=0;i<20;i++){ var item=document.createElement('li'); item.innerText='item'+nextItem++; listElm.appendChild(项目); } } //当滚动到底部时检测。 addEventListener('scroll',function(){ 如果(listElm.scrollTop+listElm.clientHeight>=listElm.scrollHeight){ loadMore(); } }); //最初加载一些项目。 loadMore(); `
    我确实知道infinute滚动,并在末尾加载剩余的记录。我想知道如何估计总记录数的滚动量。但实际上我发现了一个更有趣的东西,叫做虚拟卷轴。看起来它可能适合我的需要。一旦我用它做实验,我会给出一个回应。