用js语言写一段代码,要求:页面上有一个项目列表,当用户点击排序按钮时,列表上将按照数字大小升序排列,如果再次点击排序按钮,则表项将按照数字大小降序排列
时间: 2024-03-10 07:48:05 浏览: 43
好的,以下是一段实现该功能的 JavaScript 代码:
```html
<!-- HTML 代码 -->
<ul id="list">
<li>5</li>
<li>2</li>
<li>8</li>
<li>1</li>
<li>4</li>
</ul>
<button id="sortBtn">排序</button>
```
```javascript
// JavaScript 代码
const list = document.getElementById('list');
const sortBtn = document.getElementById('sortBtn');
let isAsc = true; // 标记当前排序状态为升序
sortBtn.addEventListener('click', () => {
// 将列表项转换为数组并按数字大小排序
const items = Array.from(list.children);
items.sort((a, b) => isAsc ? a.textContent - b.textContent : b.textContent - a.textContent);
// 将排序后的列表项重新添加到列表中
items.forEach(item => list.appendChild(item));
// 更新排序状态
isAsc = !isAsc;
});
```
当用户点击排序按钮时,代码会将列表项转换为数组并按数字大小排序,然后重新添加到列表中,实现升序或降序排列。
阅读全文