欢迎来到GM源码之家!会员签到可免费领金币,开通会员下载免金币(本站金币1:10)
广告位出租
广告位招租
用CSS3代码实现穿梭星空动画
时间:2020-11-14 来源:网络整理 作者:GM源码之家 浏览:次  推荐
特别说明:本站所有资源都是经过360、金山毒霸检测后上传的,但因JS代码的特殊性;如果您的电脑有重要资料,强烈推荐您使用虚拟机VPS等方式进行调试。
  • 软件语言:

    简体中文
  • 授权方式:

    共享软件
  • 软件大小:

    1 KB
  • 运行环境:

    PHP/MySQL
  • 推荐等级:

    ★★★☆☆
  • 下载限制:

    免费下载
  • 下载次数:

  • 解压密码:

    本站默认解压密码:www.gmyuanma.com
  • 资源售价:

    0 金币 充值金币升级VIP注册会员
  • 演示地址:

    暂无
  • 下载地址:

    立即下载

软件介绍

这篇文章主要介绍了CSS3 实现穿梭星空动画的示例,帮助大家更好的理解和制作CSS3特效,用来美化网页,感兴趣的朋友可以了解下


实现效果:

1211.gif


html

<canvas id="starfield"></canvas>


css代码

* {
  background:black;
  padding:0;
  margin:0;
}
canvas {
  padding:0;
  margin:0;
  width:100%;
  height:100%;
}


js代码

function $i(t) {
    return document.getElementById(t)
}
function $r(t, r) {
    document.getElementById(t).removeChild(document.getElementById(r))
}
function $t(t) {
    return document.getElementsByTagName(t)
}
function $c(t) {
    return String.fromCharCode(t)
}
function $h(t) {
    return ("0" + Math.max(0, Math.min(255, Math.round(t))).toString(16)).slice(-2)
}
function _i(t, r) {
    $t("div")[t].innerHTML += r
}
function _h(t) {
    return hires ? Math.round(t / 2) : t
}
function get_screen_size() {
    var t = document.documentElement.clientWidth,
        r = document.documentElement.clientHeight;
    return Array(t, r)
}
function init() {
    for (var t = 0; n > t; t++) star[t] = new Array(5), star[t][0] = Math.random() * w * 2 - 2 * x, star[t][1] = Math.random() * h * 2 - 2 * y, star[t][2] = Math.round(Math.random() * z), star[t][3] = 0, star[t][4] = 0;
    var r = $i("starfield");
    r.style.position = "absolute", r.width = w, r.height = h, context = r.getContext("2d"), context.fillStyle = "rgb(0,0,0)", context.strokeStyle = "rgb(255,255,255)"
}
function anim() {
    mouse_x = cursor_x - x, mouse_y = cursor_y - y, context.fillRect(0, 0, w, h);
    for (var t = 0; n > t; t++) test = !0, star_x_save = star[t][3], star_y_save = star[t][4], star[t][0] += mouse_x >> 4, star[t][0] > x << 1 && (star[t][0] -= w << 1, test = !1), star[t][0] < -x << 1 && (star[t][0] += w << 1, test = !1), star[t][1] += mouse_y >> 4, star[t][1] > y << 1 && (star[t][1] -= h << 1, test = !1), star[t][1] < -y << 1 && (star[t][1] += h << 1, test = !1), star[t][2] -= star_speed, star[t][2] > z && (star[t][2] -= z, test = !1), star[t][2] < 0 && (star[t][2] += z, test = !1), star[t][3] = x + star[t][0] / star[t][2] * star_ratio, star[t][4] = y + star[t][1] / star[t][2] * star_ratio, star_x_save > 0 && w > star_x_save && star_y_save > 0 && h > star_y_save && test && (context.lineWidth = 2 * (1 - star_color_ratio * star[t][2]), context.beginPath(), context.moveTo(star_x_save, star_y_save), context.lineTo(star[t][3], star[t][4]), context.stroke(), context.closePath());
    timeout = setTimeout("anim()", fps)
}
function start() {
    resize(), anim()
}
function resize() {
    w = parseInt(-1 != url.indexOf("w=") ? url.substring(url.indexOf("w=") + 2, -1 != url.substring(url.indexOf("w=") + 2, url.length).indexOf("&") ? url.indexOf("w=") + 2 + url.substring(url.indexOf("w=") + 2, url.length).indexOf("&") : url.length) : get_screen_size()[0]), h = parseInt(-1 != url.indexOf("h=") ? url.substring(url.indexOf("h=") + 2, -1 != url.substring(url.indexOf("h=") + 2, url.length).indexOf("&") ? url.indexOf("h=") + 2 + url.substring(url.indexOf("h=") + 2, url.length).indexOf("&") : url.length) : get_screen_size()[1]), x = Math.round(w / 2), y = Math.round(h / 2), z = (w + h) / 2, star_color_ratio = 1 / z, cursor_x = x, cursor_y = y, init()
}
var url = document.location.href,
    flag = !0,
    test = !0,
    n = parseInt(-1 != url.indexOf("n=") ? url.substring(url.indexOf("n=") + 2, -1 != url.substring(url.indexOf("n=") + 2, url.length).indexOf("&") ? url.indexOf("n=") + 2 + url.substring(url.indexOf("n=") + 2, url.length).indexOf("&") : url.length) : 812),
    w = 0,
    h = 0,
    x = 0,
    y = 0,
    z = 0,
    star_color_ratio = 0,
    star_x_save, star_y_save, star_ratio = 115,
    star_speed = 5,
    star_speed_save = 0,
    star = new Array(n),
    color, opacity = .1,
    cursor_x = 0,
    cursor_y = 0,
    mouse_x = 0,
    mouse_y = 0,
    canvas_x = 0,
    canvas_y = 0,
    canvas_w = 0,
    canvas_h = 0,
    context, key, ctrl, timeout, fps = 0;
start();



(责任编辑:GM源码之家)

转载请注明来源:https://www.gmyuanma.com/jsdm/4390.html

本文标签: CSS3代码 CSS3动画代码

下载须知:

☉本站所有资源不提供任何技术支持,如需提供技术支持请购买官方正版或有偿支持!
☉下载本站资源,如果服务器暂不能下载请过一段时间重试!
☉本站提供的一些商业软件是供学习研究之用,如用于商业用途,请购买正版。
☉如果这个软件总是不能下载的请转告我们,谢谢合作!
☉本站所有资源全部收集于互联网,分享目的仅供大家学习与研究,如有内容侵犯您的版权或其他利益的,请编辑邮件并加以说明发送到我们的邮箱admin@gmyuanma.com且我们会及时删除!

下载地址 【本站强推:BGP优质高防服务器

  • ↓ ↓ VIP下载专用通道 ↓ ↓
  • 进入下载地址列表 1
  • 进入下载地址列表 2
  • 进入下载地址列表 3
  • 承诺:本站所有资源无病毒,无后门,无弹窗,无干扰链接!

    郑重声明:
    本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。
    我们不承担任何技术及版权问题,且不对任何资源负法律责任。
    如无法下载,联系站长索要。
    如有侵犯您的版权,请及时联系我们,我们尽快处理。

    评论区

    会员头像
    说点什么吧
    • 全部评论(0
      还没有评论,快来抢沙发吧!