<!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 a = true
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']
};
var num = [0, 1, 2, 3, 4, 5, 6, 7];

for(var i = 0; i < aLi.length; i++) {
var oImg = aLi[i].getElementsByTagName("img")[0]
var oP = aLi[i].getElementsByTagName("p")[0]
oImg.src = json.Url[num[i]]     
oP.innerHTML = json.title[num[i]]
}

aInp[0].onclick = function() {

if(a) {
num.sort(function(a, b) {
return b - a
})
for(var i = 0; i < aLi.length; i++) {
var oImg = aLi[i].getElementsByTagName("img")[0]
var oP = aLi[i].getElementsByTagName("p")[0]
oImg.src = json.Url[num[i]]   //打乱数组【Url】顺序,如:初始num[0],打乱了后,比如var num = [1, 0, 2, 3, 4, 5, 6, 7];则num【0】等于1
oP.innerHTML = json.title[num[i]]
}
aInp[0].value = "从小到大"
a = false
} else {
num.sort(function(a, b) {
return a - b
})
for(var i = 0; i < aLi.length; i++) {
var oImg = aLi[i].getElementsByTagName("img")[0]
var oP = aLi[i].getElementsByTagName("p")[0]
oImg.src = json.Url[num[i]]
oP.innerHTML = json.title[num[i]]
}
aInp[0].value = "从大到小"
a = true
}
}

aInp[1].onclick = function() {
num.sort(function(a, b) {
return Math.random() - 0.5
})
for(var i = 0; i < aLi.length; i++) {
var oImg = aLi[i].getElementsByTagName("img")[0]
var oP = aLi[i].getElementsByTagName("p")[0]
oImg.src = json.Url[num[i]]
oP.innerHTML = json.title[num[i]]
}
}
</script>
</body>

</html>

js-随机图片的更多相关文章

  1. js 随机星星 document.createElement(); setAttribute()

    js 随机星星 document.createElement(); setAttribute() <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1. ...

  2. springboot搭建项目,实现Java生成随机图片验证码。

    这篇文章主要介绍了如何通过Java如何生成验证码并验证.验证码的作用我想必大家都知道,话不多说开始实施! 首先创建一个springboot项目以下是项目结构,内有utli工具类.存放生成图片验证码方法 ...

  3. JQuery:JQuery基本语法,JQuery选择器,JQuery DOM,综合案例 复选框,综合案例 随机图片

    知识点梳理 课堂讲义 1.JQuery快速入门 1.1.JQuery介绍 jQuery 是一个 JavaScript 库. 框架:Mybatis (jar包) 大工具 插件:PageHelper (j ...

  4. js简单 图片版时钟,带翻转效果

    js简单 图片版时钟,带翻转效果 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"& ...

  5. JS实现图片预加载无需等待

    网站开发时经常需要在某个页面需要实现对大量图片的浏览;用javascript来实现一个图片浏览器,让用户无需等待过长的时间就能看到其他图片 网站开发时经常需要在某个页面需要实现对大量图片的浏览,如果考 ...

  6. js压缩图片base64长度

    var myCanvas=$('.img-container > img').cropper('getCroppedCanvas'); (function (base64){ var image ...

  7. ASP.NET MVC中使用Dropzone.js实现图片的批量拖拽上传

    说在前面 最近在做一个MVC相册的网站(这里),需要批量上传照片功能,所以就在网上搜相关的插件,偶然机会发现Dropzone.js,试用了一下完全符合我的要求,而且样式挺满意的,于是就在我的项目中使用 ...

  8. 使用 FocusPoint.js 实现图片的响应式裁剪

    通常网站的布局都不是单一的.例如图像在电脑.平板和智能手机上可能显示的形状是不同的.特别是如果你使用的是全屏图像,在你必须使用相同的图像文件的情况下,你的主题可能会被截断或完全缺失,或者看起来很尴尬. ...

  9. Lazyr.js – 延迟加载图片(Lazy Loading)

    Lazyr.js 是一个小的.快速的.现代的.相互间无依赖的图片延迟加载库.通过延迟加载图片,让图片出现在(或接近))视窗才加载来提高页面打开速度.这个库通过保持最少选项并最大化速度. 在线演示    ...

  10. Webview加载本地js、图片的方法

    在项目开发中经常会将比较大的js.图片.css等放到app中,而html放服务器,这样在使用时流量较少,加载也比都放服务器上快,其实方法也比较多,网上搜了很久都没结果. 一种是获取服务器返回的html ...

随机推荐

  1. iOS.Objective-C.Dependency.Graphing-v0.1

    当Project越来越复杂,模块间的依赖就会很复杂,不合理的依赖就出现:不必要的依赖,双向依赖等等. 在iOS Application Project中可以将依赖定义为:对某个头文件的import. ...

  2. HTTP.ResponseCode

    HTTP响应码: http://blog.csdn.net/cutbug/article/details/4024818

  3. Introduction to 3D Game Programming with DirectX 11 翻译--开篇

    Direct3D 11简介 Direct3D 11是一个渲染库,用于在Windows平台上使用现代图形硬件编写高性能3D图形应用程序.Direct3D是一个windows底层库,因为它的应用程序编程接 ...

  4. 搭建Fabric网络(一)安装开发工具

    Fabric V1.1.0已经发布了,这里准备一篇文章来介绍Fabric V1.1.0 网络怎么搭建. 安装cURL https://curl.haxx.se/download.html 安装Dock ...

  5. MySQL连接、登录、密码等

    官方教程:https://dev.mysql.com/doc/refman/8.0/en/ 链接数据库,通过指定 -h 参数可以连接网络上的数据库 mysql -u 用户名 -h 服务器IP -P 端 ...

  6. 下载win10

    http://www.xitongtiandi.net/win10yuanban/2039.html#download

  7. 40、IOS自动打包-Python脚本

    第一种:基于编译的打包 编译工程--找到.app文件--新建Payload文件夹--拷贝.app到Payload文件夹--压缩成zip--更改后缀名为ipa--完成! 第二种(有问题,暂时不需要看) ...

  8. 720. Longest Word in Dictionary

    static int wing=[]() { std::ios::sync_with_stdio(false); cin.tie(NULL); ; }(); class Solution { publ ...

  9. 2019.01.14 bzoj5343: [Ctsc2018]混合果汁(整体二分+权值线段树)

    传送门 整体二分好题. 题意简述:nnn种果汁,每种有三个属性:美味度,单位体积价格,购买体积上限. 现在有mmm个询问,每次问能否混合出总体积大于某个值,总价格小于某个值的果汁,如果能,求所有方案中 ...

  10. mac os下提高android studio运行速度终极方法

    /Users/hangliao/ 删除(.android  .gradle)两个文件夹 android studio恢复所有设置到初始化状态,这样会删除已创建的模拟器,所以需从创建一下模拟器 mac ...