sortablejs_advanced_example.html
· 1.4 KiB · HTML
Исходник
<!DOCTYPE html>
<html lang="zh-TW">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SortableJS 進階範例</title>
<style>
.list {
list-style: none;
padding: 0;
width: 250px;
border: 1px solid #ddd;
border-radius: 5px;
background: #fafafa;
}
.list-item {
padding: 10px;
margin: 5px;
background: #fff;
border: 1px solid #ddd;
cursor: grab;
text-align: center;
}
.list-item:hover {
background: #f0f0f0;
}
</style>
</head>
<body>
<h2>拖曳排序範例</h2>
<ul id="sortable-list" class="list">
<li class="list-item" data-id="1">項目 1</li>
<li class="list-item" data-id="2">項目 2</li>
<li class="list-item" data-id="3">項目 3</li>
<li class="list-item" data-id="4">項目 4</li>
</ul>
<p><strong>最新順序:</strong></p>
<pre id="order-output">尚未排序</pre>
<script src="https://cdn.jsdelivr.net/npm/sortablejs@1.15.0/Sortable.min.js"></script>
<script>
const list = document.getElementById('sortable-list');
const output = document.getElementById('order-output');
new Sortable(list, {
animation: 150,
onEnd: function (evt) {
const items = [...list.children].map(item => item.dataset.id);
output.textContent = `順序: ${items.join(', ')}`;
}
});
</script>
</body>
</html>
| 1 | <!DOCTYPE html> |
| 2 | <html lang="zh-TW"> |
| 3 | <head> |
| 4 | <meta charset="UTF-8"> |
| 5 | <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| 6 | <title>SortableJS 進階範例</title> |
| 7 | <style> |
| 8 | .list { |
| 9 | list-style: none; |
| 10 | padding: 0; |
| 11 | width: 250px; |
| 12 | border: 1px solid #ddd; |
| 13 | border-radius: 5px; |
| 14 | background: #fafafa; |
| 15 | } |
| 16 | .list-item { |
| 17 | padding: 10px; |
| 18 | margin: 5px; |
| 19 | background: #fff; |
| 20 | border: 1px solid #ddd; |
| 21 | cursor: grab; |
| 22 | text-align: center; |
| 23 | } |
| 24 | .list-item:hover { |
| 25 | background: #f0f0f0; |
| 26 | } |
| 27 | </style> |
| 28 | </head> |
| 29 | <body> |
| 30 | |
| 31 | <h2>拖曳排序範例</h2> |
| 32 | <ul id="sortable-list" class="list"> |
| 33 | <li class="list-item" data-id="1">項目 1</li> |
| 34 | <li class="list-item" data-id="2">項目 2</li> |
| 35 | <li class="list-item" data-id="3">項目 3</li> |
| 36 | <li class="list-item" data-id="4">項目 4</li> |
| 37 | </ul> |
| 38 | |
| 39 | <p><strong>最新順序:</strong></p> |
| 40 | <pre id="order-output">尚未排序</pre> |
| 41 | |
| 42 | <script src="https://cdn.jsdelivr.net/npm/sortablejs@1.15.0/Sortable.min.js"></script> |
| 43 | <script> |
| 44 | const list = document.getElementById('sortable-list'); |
| 45 | const output = document.getElementById('order-output'); |
| 46 | |
| 47 | new Sortable(list, { |
| 48 | animation: 150, |
| 49 | onEnd: function (evt) { |
| 50 | const items = [...list.children].map(item => item.dataset.id); |
| 51 | output.textContent = `順序: ${items.join(', ')}`; |
| 52 | } |
| 53 | }); |
| 54 | </script> |
| 55 | |
| 56 | </body> |
| 57 | </html> |
| 58 |