HTML爱心照片墙源码

news2024/9/21 1:39:14

HTML爱心照片墙源码

在这里插入图片描述css

@charset "utf-8";
* {
    padding: 0;
    margin: 0;
}
div {
    font-family: "微软雅黑";
    font-size: 14px;
    color: #666;
    padding: 0;
    margin: 0;;
}
body,html{
    background: black;
    height: 100%;
}
/*css3实现照片墙的样式*/
.container {
    width: 100%;
    height: 100%;
    position: relative;
	margin: auto;
    background-color: black;
    overflow: hidden;
}
 
.container img {
    position: absolute;
    padding: 5px;
    height: 300px;
    width: 300px;
    background: #fff;
    border: 1px solid #ddd;
    -webkit-transition: all 1s ease-in-out;
    -moz-transition: all 1s ease-in-out;
    transition: all 1s ease-in-out;
    z-index: 1;    
    top:50%;
    left:50%;
    -webkit-transform-origin:50% 50%;
    -moz-transform-origin:50% 50%;
    transform-origin:50% 50%;
    -webkit-transform: translate(-50%,-50%) ;
    -moz-transform: translate(-50%,-50%) ;
    transform: translate(-50%,-50%) ;
}
.start{
    background-color: blue!important;
    z-index: 4!important;
    -webkit-transition: all 0.2s ease-in-out!important;
    -moz-transition: all 0.2s ease-in-out!important;
    transition: all 0.2s ease-in-out!important;
}
.surprise{    
    -webkit-transform-origin:50% 50%!important;
    -moz-transform-origin:50% 50%!important;
    transform-origin:50% 50%!important;
    -webkit-transform: rotate(0deg) translate(-50%,-50%) !important;
    -moz-transform: rotate(0deg) translate(-50%,-50%) !important;
    transform: rotate(0deg) translate(-50%,-50%) !important;   
    /* -webkit-transform:!important;
    -moz- rotate(360deg)transform:rotate(360deg)!important;
    transform:rotate(360deg)!important;    */
    top:50%!important;
    left:50%!important;
    height: 500px!important;
    width: 500px!important;
    z-index: 5!important;
    background-color: red;
}

html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>照片墙</title>
    <link rel="stylesheet" href="./style.css">
</head>
<body>
    <div class="container" id="container"></div>
	<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script>
	<script>
		$(function () {
			var count = 0;
			var selectFlag = false;
			var startFlag = false;
			var roundBox;
			$("#container").css("width", window.innerHeight * 4 / 3)
			var appendPic = function (item) {
				if (selectFlag) {
					return
				}
				var x = Math.random() * 4,
					y = Math.random() * 4
				if (!heartFunc(x, y)) {
					appendPic(item)
				} else {
					var back = "jpg";
					var imgNum = 10;
					if (item % imgNum == 1) {
						back = "gif"
					}
					if (item % imgNum == 2 || item % imgNum == 3 || item % imgNum == 4) {
						back = "png"
					}
					var html = '<img src="./img/img'  + '.png'  + '" class="picBase" id="pic-' + item + '"  />'
					$("#container").append(html)
					setTimeout(function () {
						$("#pic-" + item).css("top", 45 + 25 * (2 - y) * 0.85 + "%").css("left", 50 + 25 * (2 - x) * 0.85 + "%")
							.css("transform", "rotate("+(25 * (0.5 - Math.random())) + "deg) translate(-50%,-50%)")
							.css("width", "100px").css("height", "100px")
					}, 500);
 
				}
 
			}
			var init = function () {
				for (var i = 1; i < 100; i++) {
					appendPic(i)
					count++
				}		
			}
			var selectFunc = function () {
				$(".surprise").removeClass("surprise").css("transform", "rotate("+(25 * (0.5 - Math.random())) + "deg) ")
				$("#pic-" + Math.floor(Math.random() * count)).addClass("surprise")		
				$(".start").removeClass("start")		
			}
			var comfirmFunc = function () {				
				startFunc();
			}
			var startFunc = function () {
				$(".surprise").removeClass("surprise")
				roundBox= window.setInterval(function(){
					
				$(".start").removeClass("start")
					for (var i = 1; i < count; i++) {
					if(i%20==Math.floor(Math.random() * 20)){
						$("#pic-" + i).addClass("start")
					}					
				}
				},200)				
			}
			var enterNum=0
			$(document).keydown(function (e) {
				selectFlag = true;
				if (!e) var e = window.event;
				if (e.keyCode == 32) { //选
					if(enterNum%2==0){
						startFunc();
					}else{			
						startFlag=true		
						window.clearInterval(roundBox)					
						$(".start").removeClass("start")
						selectFunc();
					}
					enterNum++
					// startFunc();
				}
				if (e.keyCode == 13) { //存
					comfirmFunc();
				}
			});
			var heartFunc = function (x, y) {
				// console.log(x,y)
				if (x >= 0 && x < 1) {
					if (y < (x + 3) && y > (-x + 2)) {
						return true
					}
				} else if (x >= 1 && x < 2) {
					if (y < (-x + 5) && y > (-x + 2)) {
						return true
					}
				} else if (x >= 2 && x < 3) {
					if (y < (x + 1) && y > (x - 2)) {
						return true
					}
				} else if (x >= 3 && x < 4) {
					if (y < (-x + 7) && y > (x - 2)) {
						return true
					}
				}
				return false
			}
			init();
		})
	</script>
</body>
</html>

源码下载:HTML爱心照片墙源码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/61891.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java毕业设计 基于SSM的网上图书商城系统

对于传统书店来讲,利用计算机软件技术开发一款图书商城也会让书店员工省事不少,这个图书商城能让书籍信息还有注册用户信息,以及书籍订购等内容通过一个网络平台完全展示出来,让网站用户只要登录进去图书商城就可以查看所有的内容,用户可以查看新闻以及书籍产品及时更新的信息,…

【设计模式】设计模式

书籍推荐 《设计模式-可复⽤⾯向对象软件的基础》《重构与模式》 设计模式 设计模式是指在软件开发中&#xff0c;经过验证的&#xff0c;⽤于解决在特定环境下&#xff0c;重复出现的&#xff0c;特定问题的解决⽅案&#xff1b; 内存模型 扩展&#xff1a;c语⾔当中的多态…

年产2万吨山楂酒工厂的设计-装瓶工段及车间的设计(lunwen+任务书+开题+选题表+cad图纸)

目 录 目 录 I 第一章 绪论 1 1.1设计背景及目的 1 1.1.1山楂酒的介绍及功效 1 1.1.2目标人群 1 1.1.3发展前景 2 1.2设计依据 2 1.3设计内容 2 1.4原材料的选择 3 第二章 工艺设计 4 2.1 生产时间安排 4 2.2 工艺流程图 4 2.3 工艺要点 4 2.3.1山楂 5 2.3.3压榨 5 2.3.4分离取…

【pen200-lab】10.11.1.8

pen200-lab 学习笔记 【pen200-lab】10.11.1.5 &#x1f525;系列专栏&#xff1a;pen200-lab &#x1f389;欢迎关注&#x1f50e;点赞&#x1f44d;收藏⭐️留言&#x1f4dd; &#x1f4c6;首发时间&#xff1a;&#x1f334;2022年12月4日&#x1f334; &#x1f36d;作者…

Java自动装箱与自动拆箱

1、Java基本数据类型及其对应的包装器类类型 Java中共用8种基本数据类型&#xff0c;并为这8种基本数据类型中的每一种都提供了一个包装器类&#xff0c;例如int类型对应的包装器类是Integer。具体类型如下表&#xff1a; 2、自动装箱和自动拆箱 自动装箱&#xff1a;就是指…

【大道模式】状态模式 - State Pattern(审核状态流转)

最近在实现一个简单的审核系统&#xff0c;包含多个审核状态和多个审核动作&#xff0c;将业务逻辑映射到代码中感觉会有很多繁杂的逻辑&#xff0c;因此&#xff0c;会思考用一个比较通用、易扩展、易维护、易测试的模式来应对这种场景&#xff0c;了解了一下&#xff0c;就是…

Java数据结构与Java算法学习Day03---线性表(简略笔记记录)

目录 一、线性表 38 二、顺序表 39 三、链表 45 3.1单向链表 46、47、48 3.2双向链表 49 3.3链表反转 &#xff08;面试中高频题目&#xff09; 56 3.4快慢指针 57 3.4.1中间值问题 57 3.4.2单向链表是否有环问题 58 3.4.3有环链表入口问题 60 3.5循环链表 61 3.6…

(Java)Mybatis学习笔记(三)

前言 继续学习MyBatis各种查询功能章节&#xff0c;争取早日学完mybatis MyBatis中各种查询功能 ❄️若查询出的 数据只有一条&#xff0c;可以通过实体类对象或集合接收 ❄️若查询出的 数据有多条&#xff0c;可以通过集合接收&#xff0c;一定不能通过实体类对象接收&am…

社区系统项目复盘-8

文章目录任务执行和调度热帖排行生成长图优化网站的性能使用Quartz执行定时任务&#xff0c;实现热帖排行功能时&#xff0c;通过定时任务定时计算帖子分数&#xff0c;降低计算的数据量。使用wkhtmltopdf生成长图。通过多级缓存对热帖功能进行优化&#xff0c;提升网站性能。 …

回归分析-书后习题回顾总结

4-1 题目 理论基础 经典多元线性回归模型 参数β\betaβ的最小二乘估计 设rank(C)m1≤nrank(C)m1≤nrank(C)m1≤n&#xff0c;则β^b(CTC)−1CTY\widehat{\beta}b(C^{T}C)^{-1}C^{T}Yβ​b(CTC)−1CTY是β\betaβ的最小二乘估计 具体解题

[附源码]计算机毕业设计网文论坛管理系统Springboot程序

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

本田125摩托安装版成型模具设计及仿真(任务书+说明书+工艺卡片+cad图纸+sw三维图)

目录 1 绪论 1 2 模塑工艺规程的编制 3 2.1塑件的工艺性分析 3 2.1.1塑件的原材料分析 3 2.2塑件的结构和尺寸精度及表面质量分析 4 2.2.1结构分析 4 2.2.2尺寸精度分析 4 2.2.3表面质量分析 4 2&#xff0e;3计算塑件的体积和质量 4 2&#xff0e;4塑件成型工艺参数的确定 5 2…

34. 在排序数组中查找元素的第一个和最后一个位置

&#x1f308;&#x1f308;&#x1f604;&#x1f604; 欢迎来到茶色岛独家岛屿&#xff0c;本期将为大家揭晓34. 在排序数组中查找元素的第一个和最后一个位置&#xff0c;做好准备了么&#xff0c;那么开始吧。 &#x1f332;&#x1f332;&#x1f434;&#x1f434; 一、题…

[激光原理与应用-36]:《光电检测技术-3》- 光学测量基础 - 光电效应与光电探测器的基本原理

目录 一、概述 二、光电检测的理论基础&#xff1a;光电效应 三、分类 3.1 光子效应 3.2 热效应 四、光电检测器的参数 五、常见的光电探测器 5.1 光电倍增管&#xff1a;微弱光信号转换成电信号 5.2 光电导器件&#xff1a;电阻或电流随着光强的变化而变化 5.3 光伏…

idea 启动报错 Command line is too long

idea 运行启动类报错 Command line is too long 启动报错信息&#xff1a;Error running ‘Application‘: Command line is too long. 翻译过来就是&#xff1a;启动命令过长&#xff01; 解决方案 1、点开项目启动配置项目&#xff1b; 2、shorten command line 选项选择 J…

(五)进程管理:进程的状态与控制

文章目录一、进程的状态二、进程控制1. 进程控制的原语2. 挂起与激活一、进程的状态 进程的生命周期&#xff1a;从创建到终止的过程 进程的三种基本状态 就绪&#xff08;Ready&#xff09; 可运行而未运行的状态&#xff0c;进程已经分配到除了处理机外的所有资源&#xf…

[附源码]计算机毕业设计校园订餐系统Springboot程序

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

python数据分析及可视化(十六)金融量化(金融工具、金融分析、Tushare安装使用、双均线分析)

金融介绍 金融就是对现有资源进行重新整合之后&#xff0c;实现价值和利润的等效流通。 比如小明想把手里的资金投资给小李&#xff0c;而小李有好的增值项目但是缺少资金&#xff0c;如果小李的项目创业成功&#xff0c;小明的资金就会增长。 金融工具 在金融市场中可交易的…

时序数据库基本概念学习

目录1、时序数据1.1 定义1.2 数学模型1.3 数据特点2、存储优化3、存储原理4、时序数据模型4.1 基于标签&#xff08;tag-value&#xff09;4.2 基于树形&#xff08;tree schema&#xff09;1、时序数据 1.1 定义 时序数据就是一串按时间维度索引的数据&#xff0c;这类数据描…

C++11闭包函数的几种实现方法

什么是闭包函数 函数就是对传入的一组参数进行运算的行为&#xff0c;闭包函数就是有状态的函数&#xff0c;在参与运算时&#xff0c;除了传入的参数外&#xff0c;还可以对上下文的状态进行运算。类函数运行时就是典型的闭包函数&#xff0c;类函数运行起来后其对象就是状态…