jQuery是一個基于JavaScript編寫的快速、簡潔、跨瀏覽器的JavaScript庫,被廣泛應用于Web開發之中。它能快速地操作網頁元素,輕松實現各種動態效果,而且非常簡單易學。本文介紹通過id完成升序。
$(document).ready(function(){ $("#sort").click(function(){ var mylist = $('#list'); var listitems = mylist.children('li').get(); listitems.sort(function(a, b) { var compA = $(a).text().toUpperCase(); var compB = $(b).text().toUpperCase(); return (compA < compB) ? -1 : (compA > compB) ? 1 : 0; }); $.each(listitems, function(idx, itm) { mylist.append(itm); }); }); });
上面的代碼就是通過id完成升序的jQuery示例。我們先來分析一下。首先,我們通過id找到排序的按鈕,并注冊了一個單擊事件。
$("#sort").click(function(){ // ... });
當用戶點擊該按鈕時,jQuery開始工作。首先,獲取list列表中的所有li子項。
var mylist = $('#list'); var listitems = mylist.children('li').get();
這里返回的是一個數組,包含所有li子項的引用。接下來,我們將li子項按照文本內容升序排序。
listitems.sort(function(a, b) { var compA = $(a).text().toUpperCase(); var compB = $(b).text().toUpperCase(); return (compA < compB) ? -1 : (compA > compB) ? 1 : 0; });
這里使用了JavaScript中的sort()方法,傳入一個函數作為參數。函數會比較a和b兩個對象的文本內容,并返回排序結果。
最后,我們將排好序的li子項重新插入list元素。
$.each(listitems, function(idx, itm) { mylist.append(itm); });
總的來說,這個jQuery代碼比較簡單易懂。通過id找到元素,實現按照文本升序的排序,并重新插入對應元素,是典型的jQuery實現。不過,需要注意的是,該代碼只處理文本內容,如果列表中有其他類型的元素,需要適當修改代碼才能實現相應功能。
上一篇jquery讀取條形碼