批改状态:未批改
老师批语:
1、编写一个动态相册管理器
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>复仇者卡通相册</title>
<style>
.warp {
width: 720px;
height: auto;
background-color: linen;
border: 3px double grey;
color: #363636;
border-radius: 2%;
box-shadow: 2px 2px 2px #888;
}
.warp .header {
padding: 15px;
}
.warp .header h2 {
text-align: center;
}
.add {
width: 100px;
height: 30px;
border: none;
cursor: pointer;
background-color: deepskyblue;
color: white;
}
.add:hover {
background-color: orange;
font-size: 1.1rem;
}
.main {
overflow: hidden;
}
.main ul {
padding: 0;
margin: 0;
}
.main ul li {
list-style-type: none;
float: left;
margin-left: 20px;
margin-bottom: 10px;
width: 150px;
height: 200px;
text-align: center;
}
.main ul li button {
margin: 3px;
border: none;
border-radius: 5%;
background-color: deepskyblue;
}
.main ul li button:hover {
background-color: orange;
color: white;
cursor: pointer;
}
</style>
</head>
<body>
<div class="warp">
<div class="header">
<h2 style="color: blue">复仇者相册</h2>
<p>
<label for="img_url">输入图片地址</label>
<input type="file" name="img_url" id="img_url" placeholder="图片地址">
</p>
<p>
图片类型:
<input type="radio" id="rect" name="border" value="0" checked><label for="rect">直角</label>
<input type="radio" id="radius" name="border" value="10%"><label for="radius">圆角</label>
<input type="radio" id="circle" name="border" value="50%"><label for="circle">圆形</label>
</p>
<p>
<label for="shadow">是否添加阴影:</label>
<select name="shadow" id="shadow">
<option value="0" selected>不添加</option>
<option value="1">添加</option>
</select>
</p>
<p><button class="add">添加图片</button></p>
</div>
<div class="main">
<ul>
</ul>
</div>
</div>
<script src="static/js/jquery-3.4.1.js"></script>
<script>
$(function(){
$('button.add').on('click',function(){
//1. 获取图片的相关信息
// 判断用户是否选择了图片
var img_url = $('#img_url').val();
if (img_url.length === 0) {
alert('请选择一张图片');
$('#img_url').focus();
return false;
}
//获取图片的基本特征
//获取到图片的外观
var img_type = $('input[type="radio"]:checked').val();
//是否添加阴影?
var shadow = 'none';
if ($(':selected').val() === '1') {
shadow = '2px 2px 2px #888';
}
//2. 创建图片并添加到页面中
var realImgUrl = img_url.split('\\')[2];
img_url = 'http://html.io:89/0521/static/images/'+realImgUrl;
/***************************************************************/
// 创建图片与按钮,并打包到一个容器中, 添加到页面列中
var img = $('<img>')
// attr(): 支持使用对象字面量一次性添加多个属性
.attr({
src: img_url,
width: 150,
height:150,
alt: '复仇者相册'
})
.css({
'border-radius': img_type,
'box-shadow': shadow
});
// 创建三个操作按钮
var before = $('<button></button>').text('前移');
var after = $('<button></button>').text('后移');
var remove = $('<button></button>').text('删除');
// 创建一个<li>用来放所有的内容
var contaier = $('<li>');
//将图片和三个按钮打包到<li>中
contaier.append(img,before,after,remove);
//将<li>添加到页面中的<ul>中
contaier.appendTo('ul');
/**************************************************************/
//3. 为三个操作添加功能
//前移功能:
before.on('click', function(){
//第一步获取到要移动的图片
var current = $(this).parent();
var prev = current.prev(); // 前一个元素
// 在前一个元素之前将当前元素插入
prev.before(current);
});
//后移功能:
after.on('click', function(){
//第一步获取到要移动的图片
var current = $(this).parent();
var next = current.next(); // 后一个元素
// 在后一个元素之后将当前元素插入
next.after(current);
});
//删除
remove.on('click', function () {
if (confirm('确认删除吗?')) {
$(this).parent().remove();
}
return false;
})
})
});
</script>
</body>
</html>点击 "运行实例" 按钮查看在线实例
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号