用原生Js利用sort方法 實現圖片的正 倒排序和隨機排序
效果如圖展示:
程式碼如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<style>
ul,li,p{padding: 0;margin: 0;}
ul,li{list-style: none;}
#box{width: 1000px;height: 600px;border: 1px solid #000;margin: 50px auto;text-align: center;position: relative;}
input{ margin-top: 30px; width: 100px; height: 30px;line-height: 30px; border: 1px solid #ccc;background: #009999;color: #fff;outline: none;}
ul{width: 1000px; height: 500px;top: 100px;position: absolute;background: #fff;}
ul li{width: 240px; height: 250px;float: left;padding: 0 5px 10px 5px;}
ul li img{width: 240px;height: 200px;vertical-align: top;}
p{background: #ccc;height: 30px; line-height: 30px; color: #006598;font-weight: bold;}
</style>
</head>
<body>
<div id="box">
<input type="button" value="從大到小" />
<input type="button" value="打亂順序" />
<ul>
<li>
<img src="img/1.jpg" alt="">
<p>1 - 言葉之庭01</p>
</li>
<li>
<img src="" alt="">
<p></p>
</li>
<li>
<img src="" alt="">
<p></p>
</li>
<li>
<img src="" alt="">
<p></p>
</li>
<li>
<img src="" alt="">
<p></p>
</li>
<li>
<img src="" alt="">
<p></p>
</li>
<li>
<img src="" alt="">
<p></p>
</li>
<li>
<img src="" alt="">
<p></p>
</li>
</ul>
</div>
<script>
var aLi = document.getElementsByTagName('li');
var aInp = document.getElementsByTagName('input');
var json = {
'Url' : ['img/1.jpg','img/2.jpg','img/3.jpg','img/4.jpg','img/5.jpg','img/6.jpg','img/7.jpg','img/8.jpg'],
'title' : ['1 - 言葉之庭01','2 - 言葉之庭02','3 - 言葉之庭03','4 - 言葉之庭04','5 - 言葉之庭05','6 - 言葉之庭06','7 - 言葉之庭07','8 - 言葉之庭08']
};
aInp[0].onoff=true
var num = [0,1,2,3,4,5,6,7];
var oImg=document.getElementsByTagName("img")
var oP=document.getElementsByTagName("p")
//初始化
for (var i=0;i<aLi.length;i++) {
oImg[i].src=json.Url[i]
oP[i].innerHTML=json.title[i]
}
//從大到小
aInp[0].onclick=function(){
if(this.onoff){
num.sort(function(a,b){
return b-a
})
this.value="從小到大"
for (var i=0;i<aLi.length;i++) {
oImg[i].src=json.Url[num[i]]
oP[i].innerHTML=json.title[num[i]]
}
console.log(num)
aInp[0].onoff=false
}else{
//從小到大
num.sort(function(a,b){
return a-b
})
this.value="從大到小"
for (var i=0;i<aLi.length;i++) {
oImg[i].src=json.Url[num[i]]
oP[i].innerHTML=json.title[num[i]]
}
console.log(num)
aInp[0].onoff=true
}
}
//打亂順序
aInp[1].onclick=function(){
num.sort(function(a,b){
return Math.random()-0.5
})
for (var i=0;i<aLi.length;i++) {
oImg[i].src=json.Url[num[i]]
oP[i].innerHTML=json.title[num[i]]
}
console.log(num)
}
</script>
</body>
</html>
相關文章
- 隨機錯亂排序(sort的應用)隨機排序
- 用JS實現氣泡排序和插入排序JS排序
- Javascript陣列排序sort方法和自定義排序方法JavaScript陣列排序
- JS陣列隨機排序的三種方法JS陣列隨機排序
- 原生js實現商品排序功能JS排序
- Collections sort()排序方法排序
- Java中氣泡排序的原生實現方式(正序和逆序)Java排序
- 排序圖解:js排序演算法實現排序圖解JS演算法
- 教你如何運用golang 實現陣列的隨機排序Golang陣列隨機排序
- 用原生js實現圖片輪播器JS
- 利用java實現插入排序、歸併排序、快排和堆排序Java排序
- Sort排序專題(5)快速排序(QuickSort)(C++實現)排序UIC++
- 隨機快速排序Java程式碼實現隨機排序Java
- 【轉】堆排序Heap Sort——Java實現排序Java
- 隨機排序隨機排序
- 排序sort排序
- sort排序排序
- Collections.sort()方法,字元排序字元排序
- js實現兩種實用的排序演算法——冒泡、快速排序JS排序演算法
- 關於js陣列方法sort()負數排序的陷阱JS陣列排序
- Python教程:sort和sorted實現排序之對比Python排序
- .NET 排序 Array.Sort<T> 實現分析排序
- 用原生JS實現 圖片輪播切換 功能JS
- Sort排序專題(7)歸併排序(MergeSort)(C++實現)排序C++
- elasticsearch實現簡單的指令碼排序(script sort)Elasticsearch指令碼排序
- js 實現堆排序JS排序
- 利用遞迴實現連結串列的排序(歸併排序)遞迴排序
- Python中用來排序的方法sort、sortedPython排序
- JS的平凡之路--簡易的圖片拖拽排序JS排序
- 實現陣列的隨機排序(含洗牌演算法)陣列隨機排序演算法
- [Shell] Sort排序的例子排序
- Array.sort 演算法原理(插入排序\快速排序in-place實現)演算法排序
- Go實現氣泡排序和快速排序Go排序
- js中 的排序方法JS排序
- 堆排序 Heap Sort排序
- Elasticsearch script sort 排序Elasticsearch排序
- 桶排序bucket sort排序
- 快速排序(Quick Sort)排序UI