利用JS就可以實(shí)現(xiàn)在點(diǎn)擊按鈕實(shí)現(xiàn)圖片排序,做個(gè)狠人,直接說(shuō):
效果
1 、點(diǎn)擊按鈕
如果按鈕文字是從大到小 將li標(biāo)簽按照從大到小的順序排列 文字改成從小到大
如果按鈕文字是從小到大 將li標(biāo)簽按照從小到大的順序排列 文字變成從大到小
2 、點(diǎn)擊按鈕 將li隨機(jī)排序
<style> * { padding: 0; margin: 0; list-style: none; } .wrap { width: 440px; margin: 50px auto; text-align: center; } ul li { float: left; width: 100px; height: 130px; margin-right: 10px; margin-bottom: 10px; font-size: 12px; } ul li img { width: 100px; height: 100px; } ul li p { line-height: 30px; text-align: center; font-size: 12px; } .wrap button { display: inline-block; width: 100px; height: 40px; text-align: center; line-height: 40px; background-color: red; border: none; margin-right: 20px; margin-bottom: 20px; color: #fff; font-size: 16px; } </style>
<div class="wrap"> <button>從大到小</button><button>隨機(jī)排序</button> <ul> <li> <img src="./img1.jfif" alt=""> 柴犬<span>1</span> </li> <li> <img src="./img2.jfif" alt=""> 柴犬<span>2</span> </li> <li> <img src="./img3.jfif" alt=""> 柴犬<span>3</span> </li> <li> <img src="./img4.jfif" alt=""> 柴犬<span>4</span> </li> <li> <img src="./img5.jfif" alt=""> 柴犬<span>5</span> </li> <li> <img src="./img6.jfif" alt=""> 柴犬<span>6</span> </li> <li> <img src="./img7.jfif" alt=""> 柴犬<span>7</span> </li> <li> <img src="./img8.jfif" alt=""> 柴犬<span>8</span> </li> </ul>
<script> /* 2. 效果 2.1 點(diǎn)擊按鈕 如果按鈕文字是從大到小 將li標(biāo)簽按照從大到小的順序排列 文字改成從小到大 如果按鈕文字是從小到大 將li標(biāo)簽按照從小到大的順序排列 文字變成從大到小 2.2 點(diǎn)擊按鈕 將li隨機(jī)排序 標(biāo)簽排序比較快 注意: 獲取元素方式: document/父元素.getElementsByTagName() document/父元素.getElementsByClassName() */ // 1.獲取元素 button li ul var btns = document.getElementsByTagName('button'); var lis = document.getElementsByTagName('li'); var ul = document.getElementsByTagName('ul')[0]; console.log(btns, lis, ul); // 5.將集合轉(zhuǎn)成數(shù)組 var liarr = []; for (var i = 0; i < lis.length; i++) { liarr.push(lis[i]); } console.log(liarr); // 2.添加事件 btns[0].onclick = function () { // 3.如果按鈕是從大到小 if (this.innerText == '從大到小') { // 4.將li標(biāo)簽按照從大到小的順序排列 liarr.sort(function (a, b) { console.log(a, b); // 6.獲取a、b中的span var as = a.getElementsByTagName('span')[0].innerText; var bs = b.getElementsByTagName('span')[0].innerText; console.log(as, bs); // 7.設(shè)置返回值 return bs - as; }); // 9.更新文字 this.innerText = '從小到大' } else { liarr.sort(function (a, b) { console.log(a, b); var as = a.getElementsByTagName('span')[0].innerText; var bs = b.getElementsByTagName('span')[0].innerText; return as - bs; }); this.innerText = '從大到小' } // console.log(liarr); // 8.渲染到ul中 // 8.1清空頁(yè)面中ul的內(nèi)容 ul.innerHTML = ''; // 8.2.將liarr里面的每一個(gè)數(shù)據(jù)渲染到頁(yè)面ul中 for (var j = 0; j < liarr.length; j++) { ul.innerHTML += '<li>' + liarr[j].innerHTML + '</li>'; } } // 隨機(jī)排序 btns[1].onclick = function () { liarr.sort(function (a, b) { console.log(a, b); return Math.random() - 0.5; }); ul.innerHTML = ''; for (var j = 0; j < liarr.length; j++) { ul.innerHTML += '<li>' + liarr[j].innerHTML + '</li>'; } } </script>
效果:
從小到大
從大到小
隨機(jī)排序
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/128193.html
摘要:之前寫過(guò)一篇基于的表格分頁(yè)組件的文章,主要介紹了組件的編寫方法,有興趣的可以訪問(wèn)這里進(jìn)行閱讀前言為了進(jìn)一步讓大家了解的神奇魅力,了解的一種以數(shù)據(jù)為驅(qū)動(dòng)的理念,本文主要利用實(shí)現(xiàn)了一個(gè)數(shù)字拼圖游戲,其原理并不是很復(fù)雜,效果圖如下展示地址為有能力 之前寫過(guò)一篇《基于Vue.js的表格分頁(yè)組件》的文章,主要介紹了Vue組件的編寫方法,有興趣的可以訪問(wèn)這里進(jìn)行閱讀:https://segment...
響應(yīng)式可過(guò)濾的游戲+工具展示頁(yè)面 用于各種網(wǎng)站以按類別對(duì)圖像進(jìn)行排序。在本文中,我將向您展示如何借助 HTML CSS 和 javascript 創(chuàng)建響應(yīng)式可過(guò)濾的游戲+工具展示頁(yè)面。 可過(guò)濾作品集是一種流行的網(wǎng)絡(luò)元素,可用于各種網(wǎng)站。它是一種作品畫廊,大量作品整齊地排列在一起。值得注意的一點(diǎn)是,所有作品都可以在這里按類別排序。有一個(gè)導(dǎo)航欄,其中對(duì)所有類別進(jìn)行了排序。單擊這些類別中的任何一個(gè)時(shí)。...
摘要:后兩個(gè)屬性可選。屬性定義了項(xiàng)目的縮小比例,默認(rèn)為,即如果空間不足,該項(xiàng)目將縮小。屬性定義了在分配多余空間之前,項(xiàng)目占據(jù)的主軸空間。它的默認(rèn)值為,即項(xiàng)目的本來(lái)大小。結(jié)合的異步組件和的代碼分割功能,輕松實(shí)現(xiàn)路由組件的懶加載。 項(xiàng)目總結(jié) 這是我第二個(gè)用 Vue 實(shí)現(xiàn)的項(xiàng)目,下面內(nèi)容包括了在實(shí)現(xiàn)過(guò)程中所記錄的知識(shí)點(diǎn)以及一些小技巧 項(xiàng)目演示地址:https://music-vue.n-y.io源...
摘要:道阻且長(zhǎng)啊前端面試總結(jié)前端面試筆試面試騰訊一面瀏覽器工作原理瀏覽器的主要組件包括用戶界面包括地址欄后退前進(jìn)按鈕書簽?zāi)夸洖g覽器引擎用來(lái)查詢及操作渲染引擎的接口渲染引擎渲染界面和是基于兩種渲染引擎構(gòu)建的,使用自主研發(fā)的渲染引擎,和都使用網(wǎng)絡(luò)用來(lái) 道阻且長(zhǎng)啊TAT(前端面試總結(jié)) 前端 面試 筆試 面試 騰訊一面 1.瀏覽器工作原理 瀏覽器的主要組件包括: 用戶界面- 包括地址欄、后退/前...
閱讀 596·2023-03-27 18:33
閱讀 790·2023-03-26 17:27
閱讀 684·2023-03-26 17:14
閱讀 645·2023-03-17 21:13
閱讀 573·2023-03-17 08:28
閱讀 1895·2023-02-27 22:32
閱讀 1376·2023-02-27 22:27
閱讀 2280·2023-01-20 08:28