我有一个可以以“网格或列表”模式显示的项目列表。
这是在 HTML 中以这种方式实现的:
<!-- List mode -->
<div class="items list">
<ul></ul>
</div>
<!-- Grid mode -->
<div class="items grid">
<ul></ul>
</div>
grid/list
当用户单击一个按钮时,我只是使用 jQuery在 CSS 类之间切换。在我的样式表中,我正在设置.items.grid > ul
/的样式.items.list > ul
,有时会在模式中隐藏子元素grid
,例如:
.items.grid .hidden-grid {
display: none;
}
.items.grid ul li {
float: left;
display: inline-block;
width: 80px;
height: 80px;
}
列表中显示的元素数量可以变化,并通过“无限滚动”加载,直到有剩余项目。
这工作得相当好,但是当元素数量增加时它开始变慢。我原以为这是即时的,但它会阻止浏览器。
我该怎么做才能让它更快?
与必须再次渲染元素的浏览器相关的外观。
这可能与CSS结构有关吗?