四个复制就能用的炫酷网页特效

2023-11-09

第一个:炫酷星空

在这里插入图片描述

 
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>运营系统登录页</title>
 
<link href="static/css/login.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="static/lib/jquery/1.9.1/jquery.min.js"></script> 
<script src="static/js/verificationNumbers.js" tppabs="static/js/verificationNumbers.js"></script>
<style>
.J_codeimg{z-index:-1;position:absolute;}
</style>
<script>
$(document).ready(function() {
  //验证码
  createCode();
});
</script>
</head>
<body>
<div class="login-box" id="demo">
  </div>
  <div class="canvaszz"> </div>
  <canvas id="canvas"></canvas> 
</div>
<script>
//宇宙特效
"use strict";
var canvas = document.getElementById('canvas'),
  ctx = canvas.getContext('2d'),
  w = canvas.width = window.innerWidth,
  h = canvas.height = window.innerHeight,
 
  hue = 217,
  stars = [],
  count = 0,
  maxStars = 2500;//星星数量
 
var canvas2 = document.createElement('canvas'),
  ctx2 = canvas2.getContext('2d');
canvas2.width = 100;
canvas2.height = 100;
var half = canvas2.width / 2,
  gradient2 = ctx2.createRadialGradient(half, half, 0, half, half, half);
gradient2.addColorStop(0.025, '#CCC');
gradient2.addColorStop(0.1, 'hsl(' + hue + ', 61%, 33%)');
gradient2.addColorStop(0.25, 'hsl(' + hue + ', 64%, 6%)');
gradient2.addColorStop(1, 'transparent');
 
ctx2.fillStyle = gradient2;
ctx2.beginPath();
ctx2.arc(half, half, half, 0, Math.PI * 2);
ctx2.fill();![请添加图片描述](https://img-blog.csdnimg.cn/f7c720e91ff947a9a01febb855cfcc52.png)

 
// End cache
 
function random(min, max) {
  if (arguments.length < 2) {
    max = min;
    min = 0;
  }
 
  if (min > max) {
    var hold = max;
    max = min;
    min = hold;
  }
 
  return Math.floor(Math.random() * (max - min + 1)) + min;
}
 
function maxOrbit(x, y) {
  var max = Math.max(x, y),
    diameter = Math.round(Math.sqrt(max * max + max * max));
  return diameter / 2;
  //星星移动范围,值越大范围越小,
}
 
var Star = function() {
 
  this.orbitRadius = random(maxOrbit(w, h));
  this.radius = random(60, this.orbitRadius) / 18; 
  //星星大小
  this.orbitX = w / 2;
  this.orbitY = h / 2;
  this.timePassed = random(0, maxStars);
  this.speed = random(this.orbitRadius) / 500000; 
  //星星移动速度
  this.alpha = random(2, 10) / 10;
 
  count++;
  stars[count] = this;
}
 
Star.prototype.draw = function() {
  var x = Math.sin(this.timePassed) * this.orbitRadius + this.orbitX,
    y = Math.cos(this.timePassed) * this.orbitRadius + this.orbitY,
    twinkle = random(10);
 
  if (twinkle === 1 && this.alpha > 0) {
    this.alpha -= 0.05;
  } else if (twinkle === 2 && this.alpha < 1) {
    this.alpha += 0.05;
  }
 
  ctx.globalAlpha = this.alpha;
  ctx.drawImage(canvas2, x - this.radius / 2, y - this.radius / 2, this.radius, this.radius);
  this.timePassed += this.speed;
}
 
for (var i = 0; i < maxStars; i++) {
  new Star();
}
 
function animation() {
  ctx.globalCompositeOperation = 'source-over';
  ctx.globalAlpha = 0.5; //尾巴
  ctx.fillStyle = 'hsla(' + hue + ', 64%, 6%, 2)';
  ctx.fillRect(0, 0, w, h)
 
  ctx.globalCompositeOperation = 'lighter';
  for (var i = 1, l = stars.length; i < l; i++) {
    stars[i].draw();
  };
 
  window.requestAnimationFrame(animation);
}
 
animation();
</script>
 
</body>
</html>

第二个:点击出现文字特效

请添加图片描述

<!DOCTYPE html>
<html lang="en">
 
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
 
<body>
    <script>
        (function () {
            var a_idx = 0;
            window.onclick = function (event) {
                var a = new Array("❤富强❤", "❤民主❤", "❤文明❤", "❤和谐❤", "❤自由❤", "❤平等❤", "❤公正❤", "❤法治❤", "❤爱国❤",
                    "❤敬业❤", "❤诚信❤", "❤友善❤");
 
                var heart = document.createElement("b"); //创建b元素
                heart.onselectstart = new Function('event.returnValue=false'); //防止拖动
 
                document.body.appendChild(heart).innerHTML = a[a_idx]; //将b元素添加到页面上
                a_idx = (a_idx + 1) % a.length;
                heart.style.cssText = "position: fixed;left:-100%;"; //给p元素设置样式
 
                var f = 16, // 字体大小
                    x = event.clientX - f / 2, // 横坐标
                    y = event.clientY - f, // 纵坐标
                    c = randomColor(), // 随机颜色
                    a = 1, // 透明度
                    s = 1.2; // 放大缩小
 
                var timer = setInterval(function () { //添加定时器
                    if (a <= 0) {
                        document.body.removeChild(heart);
                        clearInterval(timer);
                    } else {
                        heart.style.cssText = "font-size:16px;cursor: default;position: fixed;color:" +
                            c + ";left:" + x + "px;top:" + y + "px;opacity:" + a + ";transform:scale(" +
                            s + ");";
 
                        y--;
                        a -= 0.016;
                        s += 0.002;
                    }
                }, 15)
 
            }
            // 随机颜色
            function randomColor() {
 
                return "rgb(" + (~~(Math.random() * 255)) + "," + (~~(Math.random() * 255)) + "," + (~~(Math
                .random() * 255)) + ")";
 
            }
        }());
    </script>
</body>
 
</html>

第三个:屏幕左下角3d人物

请添加图片描述

<!DOCTYPE html>
<html lang="en">
 
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
 
<body>
   <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/font-awesome/css/font-awesome.min.css">
   	<link rel="stylesheet" href="https://cdn.jsdelivr.net/semantic-ui/2.2.4/semantic.min.css">
           <script src="https://cdn.jsdelivr.net/npm/jquery@3.2/dist/jquery.min.js"></script>
   	<script src="https://cdn.jsdelivr.net/semantic-ui/2.2.4/semantic.min.js"></script>
   	<script src="https://cdn.jsdelivr.net/npm/jquery.scrollto@2.1.2/jquery.scrollTo.min.js"></script>
   	<script src="https://cdn.jsdelivr.net/gh/stevenjoezhang/live2d-widget@latest/autoload.js"></script>
</body>
 
</html>

第四个:蜘蛛网特效

<!DOCTYPE html>
<html lang="en">
 
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
 
<body>
  <script type="text/javascript">
  	!function () {
  	    function n(n, e, t) {
  	        return n.getAttribute(e) || t
  	    }
  	 
  	    function e(n) {
  	        return document.getElementsByTagName(n)
  	    }
  	 
  	    function t() {
  	        var t = e("script"), o = t.length, i = t[o - 1];
  	        return {l: o, z: n(i, "zIndex", -1), o: n(i, "opacity", .5), c: n(i, "color", "0,0,0"), n: n(i, "count", 99)}
  	    }
  	 
  	    function o() {
  	        a = m.width = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth, c = m.height = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight
  	    }
  	 
  	    function i() {
  	        r.clearRect(0, 0, a, c);
  	        var n, e, t, o, m, l;
  	        s.forEach(function (i, x) {
  	            for (i.x += i.xa, i.y += i.ya, i.xa *= i.x > a || i.x < 0 ? -1 : 1, i.ya *= i.y > c || i.y < 0 ? -1 : 1, r.fillRect(i.x - .5, i.y - .5, 1, 1), e = x + 1; e < u.length; e++) n = u[e], null !== n.x && null !== n.y && (o = i.x - n.x, m = i.y - n.y, l = o * o + m * m, l < n.max && (n === y && l >= n.max / 2 && (i.x -= .03 * o, i.y -= .03 * m), t = (n.max - l) / n.max, r.beginPath(), r.lineWidth = t / 2, r.strokeStyle = "rgba(" + d.c + "," + (t + .2) + ")", r.moveTo(i.x, i.y), r.lineTo(n.x, n.y), r.stroke()))
  	        }), x(i)
  	    }
  	 
  	    var a, c, u, m = document.createElement("canvas"), d = t(), l = "c_n" + d.l, r = m.getContext("2d"),
  	        x = window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || function (n) {
  	            window.setTimeout(n, 1e3 / 45)
  	        }, w = Math.random, y = {x: null, y: null, max: 2e4};
  	    m.id = l, m.style.cssText = "position:fixed;top:0;left:0;z-index:" + d.z + ";opacity:" + d.o, e("body")[0].appendChild(m), o(), window.onresize = o, window.onmousemove = function (n) {
  	        n = n || window.event, y.x = n.clientX, y.y = n.clientY
  	    }, window.onmouseout = function () {
  	        y.x = null, y.y = null
  	    };
  	    for (var s = [], f = 0; d.n > f; f++) {
  	        var h = w() * a, g = w() * c, v = 2 * w() - 1, p = 2 * w() - 1;
  	        s.push({x: h, y: g, xa: v, ya: p, max: 6e3})
  	    }
  	    u = s.concat([y]), setTimeout(function () {
  	        i()
  	    }, 100)
  	}();
  </script>
</body>
 
</html>

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

四个复制就能用的炫酷网页特效 的相关文章

  • jquery validation engine ajax,jquery ajax validation engine not working

    my jquery validation form is not validate here is the code like document ready function frm validationEngine validate HD
  • 在vscode中的js文件中自动补全html标签

    code 首选项 settings 查找settings json 然后在json文件中加入 emmet includeLanguages javascript html
  • 汉德笔试,感觉有些难的手机密码的动态规划题

    汉德公司的笔试编程题有两个 一个很简单 另一个感觉是加分题 当场没做出来后来做出来了 1 充电桩 N个电桩 第一个输入为ele数组 就是能充多少电 第二个输入为耗电数组 到下一站费多少电 要求输出为从任意一个充电桩进入 能跑一圈 则输出这个
  • C double转char字符串

    找个double转char字符串的代码 国内搜出来的都是些什么狗屎 翻墙出去 一搜就有几种不错的方法 方法1 使用sprintf https cboard cprogramming com c programming 38507 doubl
  • android里用Paint画圆环的时候,让圆环的笔头头部变圆

    DrawArc画圆环的时候 如果设置width过大 那么直角的笔头会画得很丑 这个时候使用以下这句就行了 Piant setStrokeCap Cap ROUND
  • xinput1_3.dll缺失了如何去修复?xinput1_3.dll解决方法分享

    缺失了xinput1 3 dll文件 对应用程序或游戏的正常运行造成了严重的影响 这个动态链接库文件 DLL 是由Microsoft Corporation开发的 它是一个重要的Windows系统文件 提供了针对Xbox 360控制器的输入
  • eclipse error: * could not be resolved

    转自 http lihaichuan blog 51cto com 498079 1060466 打开Eclipse后 编辑c c 编译时出错 could not be resolved 但运行结果正确 解决办法 在eclipse上 pro
  • Nginx实战(四) 限速功能

    本文转载至 http blog csdn net u012486840 article details 52787275 如果很多用户 同一时刻下载nginx服务器上面的资源 这样会对nginx服务器的I O产生极大负担 所以对nginx服
  • 备份文件下载

    一 备份文件下载 1 网站源码 开启题目 点开链接后 进入环境 可以看到常见网站源码备份文件的后缀和备份文件名 打开burp暴力破解flag 设置打开代理 开始抓包 2 bak文件 开启bak题目 点开链接 进入环境 出现这个界面 打开文件
  • flask url 构建

    from flask import Flask redirect url for import time app Flask name app route def hello world return hello world app rou
  • Qt QTableWidget设置表头背景色不成功的原因

    QTableWidget没有设置背景色的函数 通过Qss样式来设置背景色 m pTable gt horizontalHeader gt setStyleSheet QHeaderView section background color
  • Java8的新特性以及使用

    1 通过10个示例来初步认识Java8中的lambda表达式 我个人对Java 8发布非常激动 尤其是lambda表达式和流API 越来越多的了解它们 我能写出更干净的代码 虽然一开始并不是这样 第一次看到用lambda表达式写出来的Jav
  • 缺陷检测方法 halcon

    文章预览 前言 1 缺陷检测分类 1 1 标准缺陷检测 1 2 非标缺陷检测 针对行业特性 2 行业难点 3 常规缺陷检测算法 Halcon 3 1 差分法 3 1 1 blob分析 差分 3 1 2 模板匹配 差分 3 1 3 两种检测方
  • 前端实现在线预览pdf、word、xls、ppt等文件

    前端实现在线预览pdf word xls ppt等文件 PDF文档在线预览功能 方式一 通过a标签href属性实现 pdf文件理论上可以在浏览器直接打开预览但是需要打开新页面 在仅仅是预览pdf文件且UI要求不高的情况下可以直接通过a标签h

随机推荐

  • windows 环境下安装Tomcat

    环境 windows 7 64位 java jdk 11 0 1 官网下载jdk tomcat9版本链接地址 https tomcat apache org download 90 cgi 因为我的电脑是win7 64位的 所以选择红色框出
  • jQuery九宫格跑马灯抽奖(已知结果)

    描述 写两个抽奖 等级不同 找到一个原生写法的 原作者链接如下 参考 https www cnblogs com yangqing22 p 14065754 html 略改了一下 换成了jQuery方式 优化点 在抽奖过程中 禁止重复点击抽
  • 因果推断-解决推荐系统公平性的新思路

    论文引入 近年来推荐系统公平性成为新的热点 在所有解决公平性问题的方法中 因果推断显得格外靓眼 我们以论文 Recommendations as treatments Debiasing learning and evaluation 1
  • Android.mk的使用以及常用模板

    Android mk使用 一个Android mk file首先必须定义好LOCAL PATH变量 它用于在开发树中查找源文件 在这个例子中 宏函数 my dir 由编译系统提供 用于返回当前路径 即包含Android mk file文件的
  • redis未授权访问getshell

    参考 https blog csdn net guxiaoguo article details 78913245 利用条件 linux 对方开启ssh 用到的工具 kali nmap redis 公司测试服务器 10 0 3 45 red
  • 解决当前标识(IIS APPPOOL\XXXX)没有对“C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files”...

    1 问题描述 在Windows Server2019数据中心版中搭建IIS项目 访问的时候出现如下所示的错误 当前标识 IIS APPPOOL XXXX 没有对 C Windows Microsoft NET Framework64 v4
  • 区块链入门

    区块链 区块链 区块链基础知识 区块链概念 区块链发展历史 区块链技术基础 区块链特性 区块链分类 私有链 专有链 联盟链 行业链 公有链 区块链应用领域 金融 物联网和物流 供应链 保险 公益 公共服务 数字版权 区块链核心技术 区块链技
  • uniapp用html2canvas将图片和文字部分截取 保存到本地相册

    类实现对整个或者部分页面进行截屏 效果 下载插件 引入 所有代码 效果 下载插件 官网链接 http html2canvas hertzen com 可以npm安装npm install save html2canvas或者直接去官网下载文
  • 计算机浮点数的表示与转换

    参考书籍 x86 64 Assembly Language Programming with Ubuntu
  • 2021-04-21

    python 画多列柱状图 柱状图子图 一 目的 使用matplotlib画柱状图 或在子图中画柱状图 二 方法 1 导包 import pandas as pd import numpy as np import matplotlib p
  • python multiprocessing 报错cannot pickle ‘_io.TextTOWrapper‘ object

    一 报错TypeError cannot pickle io TextTOWrapper object 在使用多进程时报错 错误信息 TypeError cannot pickle io TextTOWrapper object 1 1 原
  • c盘满了怎么办?如何快速清理内存(6个方法)

    很多用户都会问 我的电脑c盘东西太多了 c盘满了怎么办 c盘爆满 可能还会收到系统提示磁盘空间不足的警告 当出现这种情况 会导致电脑很多应用无法正常运行 运行速度也会大大降低 该如何解决这个问题 不如来看看小编精心整理的关于如何清理c盘垃圾
  • antV使用教程入门

    在移动端使用antV F2图表入门介绍 1 通过npm安装 npm install antv f2 save 成功安装完成之后 即可使用 import 或 require 进行引用 const F2 require antv f2 2 通过
  • 剑指 Offer 14- I. 剪绳子 数学法+动态规划

    剑指 Offer 14 I 剪绳子 难度 中等 题目描述 解题思路 1 数学方法 记不清在哪里好像做过这道题 在所有的分法里 每次以3为一段能得到最大的结果 比如9 分成33的时候是最大的 计算数字除以3的余数 如果余1 就和其中一个三组合
  • DETRs Beat YOLOs on Real-time Object Detection

    目录 1 模型架构 1 1高效混合编码器 1 1 1 尺度内特征交互模块AIFI 1 1 2 跨尺度特征融合CCFM 1 2IoU感知查询选择 总结 DETRs在实时目标检测中击败YOLO 问题 DETR的高计算成本 实时检测效果有待提高
  • ES6之map()方法

    map 方法 map 映射 即原数组映射成一个新的数组 map方法接受一个新参数 这个参数就是将原数组变成新数组的映射关系 function myfun 1 arr var array arr map item gt array push
  • unity2019导入leapmotion插件显示SpatialTracking在unity Engine中缺少相应的头文件

    unity2019导入leapmotion插件显示SpatialTracking在unity Engine中缺少相应的头文件 1 问题描述 2 问题解决方法 1 2 3 插入这个插件 4 问题就可以解决了 注 2019将很多插件需要自己选择
  • RabbitMQ--扩展--10--消息追踪

    RabbitMQ 扩展 10 消息追踪 1 介绍 1 1 RabbitMQ 消息异常丢失的情况 可能是生产者与Broker断开了连接并且也没有任何重试机制 可能是消费者在处理消息时发生了异常 不过却提前进行了ack 可能是交换机并没有与任何
  • js如何实现网站内容禁止复制和粘贴、另存为?

    1 使右键和复制失效 方法1 在网页中加入以下代码 代码如下 方法2 在中加入以下代码
  • 四个复制就能用的炫酷网页特效

    第一个 炫酷星空