html5背景

*{margin:0;padding:0;list-style-type:none;}

a,img{border:0;}

$(function () {

if (!window.ActiveXObject && !!document.createElement("canvas").getContext) {

$.getScript("http://im-img.qq.com/pcqq/js/200/cav.js?_=1428576021379",

function () {

var t = {

width: 1.5,

height: 1.5,

depth: 10,

segments: 12,

slices: 6,

xRange: 0.8,

yRange: 0.1,

zRange: 1,

ambient: "#525252",

diffuse: "#FFFFFF",

speed: 0.0002

};

var G = {

count: 2,

xyScalar: 1,

zOffset: 100,

ambient: "#002c4a",

diffuse: "#005584",

speed: 0.001,

gravity: 1200,

dampening: 0.95,

minLimit: 10,

maxLimit: null,

minDistance: 20,

maxDistance: 400,

autopilot: false,

draw: false,

bounds: CAV.Vector3.create(),

step: CAV.Vector3.create(Math.randomInRange(0.2, 1), Math.randomInRange(0.2, 1), Math.randomInRange(0.2, 1))

};

var m = "canvas";

var E = "svg";

var x = {

renderer: m

};

var i, n = Date.now();

var L = CAV.Vector3.create();

var k = CAV.Vector3.create();

var z = document.getElementById("container");

var w = document.getElementById("anitOut");

var D, I, h, q, y;

var g;

var r;

function C() {

F();

p();

s();

B();

v();

K(z.offsetWidth, z.offsetHeight);

o()

}

function F() {

g = new CAV.CanvasRenderer();

H(x.renderer)

}

function H(N) {

if (D) {

w.removeChild(D.element)

}

switch (N) {

case m:

D = g;

break

}

D.setSize(z.offsetWidth, z.offsetHeight);

w.appendChild(D.element)

}

function p() {

I = new CAV.Scene()

}

function s() {

I.remove(h);

D.clear();

q = new CAV.Plane(t.width * D.width, t.height * D.height, t.segments, t.slices);

y = new CAV.Material(t.ambient, t.diffuse);

h = new CAV.Mesh(q, y);

I.add(h);

var N, O;

for (N = q.vertices.length - 1; N >= 0; N--) {

O = q.vertices[N];

O.anchor = CAV.Vector3.clone(O.position);

O.step = CAV.Vector3.create(Math.randomInRange(0.2, 1), Math.randomInRange(0.2, 1), Math.randomInRange(0.2, 1));

O.time = Math.randomInRange(0, Math.PIM2)

}

}

function B() {

var O, N;

for (O = I.lights.length - 1; O >= 0; O--) {

N = I.lights[O];

I.remove(N)

}

D.clear();

for (O = 0; O < G.count; O++) {

N = new CAV.Light(G.ambient, G.diffuse);

N.ambientHex = N.ambient.format();

N.diffuseHex = N.diffuse.format();

I.add(N);

N.mass = Math.randomInRange(0.5, 1);

N.velocity = CAV.Vector3.create();

N.acceleration = CAV.Vector3.create();

N.force = CAV.Vector3.create()

}

}

function K(O, N) {

D.setSize(O, N);

CAV.Vector3.set(L, D.halfWidth, D.halfHeight);

s()

}

function o() {

i = Date.now() - n;

u();

M();

requestAnimationFrame(o)

}

function u() {

var Q, P, O, R, T, V, U, S = t.depth / 2;

CAV.Vector3.copy(G.bounds, L);

CAV.Vector3.multiplyScalar(G.bounds, G.xyScalar);

CAV.Vector3.setZ(k, G.zOffset);

for (R = I.lights.length - 1; R >= 0; R--) {

T = I.lights[R];

CAV.Vector3.setZ(T.position, G.zOffset);

var N = Math.clamp(CAV.Vector3.distanceSquared(T.position, k), G.minDistance, G.maxDistance);

var W = G.gravity * T.mass / N;

CAV.Vector3.subtractVectors(T.force, k, T.position);

CAV.Vector3.normalise(T.force);

CAV.Vector3.multiplyScalar(T.force, W);

CAV.Vector3.set(T.acceleration);

CAV.Vector3.add(T.acceleration, T.force);

CAV.Vector3.add(T.velocity, T.acceleration);

CAV.Vector3.multiplyScalar(T.velocity, G.dampening);

CAV.Vector3.limit(T.velocity, G.minLimit, G.maxLimit);

CAV.Vector3.add(T.position, T.velocity)

}

for (V = q.vertices.length - 1; V >= 0; V--) {

U = q.vertices[V];

Q = Math.sin(U.time + U.step[0] * i * t.speed);

P = Math.cos(U.time + U.step[1] * i * t.speed);

O = Math.sin(U.time + U.step[2] * i * t.speed);

CAV.Vector3.set(U.position, t.xRange * q.segmentWidth * Q, t.yRange * q.sliceHeight * P, t.zRange * S * O - S);

CAV.Vector3.add(U.position, U.anchor)

}

q.dirty = true

}

function M() {

D.render(I)

}

function J(O) {

var Q, N, S = O;

var P = function (T) {

for (Q = 0, l = I.lights.length; Q < l; Q++) {

N = I.lights[Q];

N.ambient.set(T);

N.ambientHex = N.ambient.format()

}

};

var R = function (T) {

for (Q = 0, l = I.lights.length; Q < l; Q++) {

N = I.lights[Q];

N.diffuse.set(T);

N.diffuseHex = N.diffuse.format()

}

};

return {

set: function () {

P(S[0]);

R(S[1])

}

}

}

function v() {

window.addEventListener("resize", j)

}

function A(N) {

CAV.Vector3.set(k, N.x, D.height - N.y);

CAV.Vector3.subtract(k, L)

}

function j(N) {

K(z.offsetWidth, z.offsetHeight);

M()

}

C();

})

} else {

alert('调用cav.js失败');

}

});

php网站分享qq代码下载,HTML5QQ登录的一篇代码分享相关推荐

  1. android 新浪财经截屏分享,QQ浏览器HD 2.2:独创截屏分享至微博

    近日,腾讯发布了QQ浏览器HD(aPad)2.2,最大特色是网页拉取速度提升20%,上网更流畅;同时,还推出"截图"插件,是目前首个支持截图的aPad浏览器,用户还可以将截图分享至 ...

  2. java个人博客系统代码下载_java个人博客系统代码

    利用现存框架可以更快开发系统.所以选 择 Java 技术作为 blog 的开发工具. 为了增加系统的吞吐量,提高并发 +申请认证 文档贡献者 胡进全 计算机网络管理员 ...... javaweb课程 ...

  3. java贪吃蛇游戏代码下载_java实现贪吃蛇游戏代码(附完整源码)

    免费资源网,https://freexyz.cn/ 先给大家分享源码,喜欢的朋友点此处下载. 游戏界面 GUI界面 java实现贪吃蛇游戏需要创建一个桌面窗口出来,此时就需要使用java中的swing ...

  4. android 分享qq微信朋友圈,H5微信JS-SDK实现分享朋友 朋友圈以及QQ自定义分享

    1.准备工作 APPID公众号id.申请好友分享接口.ip白名单.js接口安全域名设置(必须是通过备案).要先登录微信公众平台进入"公众号设置"的功能设置里填写"JS接口 ...

  5. html+ajax登陆,jQuery+Ajax模拟用户登录功能的实现代码

    摘要 腾兴网为您分享:jQuery+Ajax模拟用户登录功能的实现代码,钻石星球,篆刻字典,中信金通,易码平台等软件知识,以及电视猫app,河南app,红豆婚恋,xvideos本,电子电路,qq约会, ...

  6. 备份、文件分享、远程下载 海康Mage10轻NAS首发体验

    对于数码爱好者来说,NAS(Network Attached Storage 网络连接存储)是集家庭影音娱乐中心.个人数据存储与管理等多功能于一身的设备.虽然像群晖(Synology)与威联通(QNA ...

  7. repo同步代码_iTOP-4412开发板android4.0代码下载和编译

    Android4.0 源码可以从光盘,网盘获取稳定版本,也可以从 GitHub 下载我们的开发版 本.GitHub 仅提供源码下载,不提供二进制下载,二进制文件存放在光盘和网盘中. 基于迅为4412开 ...

  8. ffmpeg-win32-v3.2.4 下载_iTOP-4412开发板android4.4代码下载和编译

    基于迅为iTOP4412开发板 Android 源码可以从光盘,网盘获取稳定版本,也可以从 GitHub 下载我们的开发版本. GitHub 仅提供源码下载,不提供二进制下载,二进制文件存放在光盘和网 ...

  9. 2022 高通 SA8155P、SDM845平台 开源代码下载

    2022 高通 SA8155P.SDM845平台 开源代码下载 SA8155P 开源代码下载:Android 10 sdm845 开源代码下载:Android 12 SA8155P 开源代码下载:An ...

最新文章

  1. linq调用mysql函数_mysql-在LINQ中执行FirstOrDefault的另一种方法
  2. SAP成都研究院廖婧:SAP C4C社交媒体集成概述
  3. java中sofa并发访问,云上的日子:用块存储、文件存储还是对象存储?
  4. function在mysql里总是出错_如何在MySQL函数中引发错误
  5. 冲击波病毒简介及解决方法
  6. Anylogic中队列属性设置
  7. 如何将cad导成jpg图片格式?
  8. actviti 工作流核心技术和实战-学习笔记(一)什么是工作流
  9. JavaScript判断鼠标中键滑轮的上下滚动
  10. 转李承鹏的《恰恰》,这次一定要顶他
  11. 电脑怎么隐藏文件夹?6个步骤完成!
  12. day07、1 - 域
  13. 夕阳美,美到骨子里了
  14. Windows7截图教学
  15. 劝人自杀情绪多变,人工智能真不是个“东西”
  16. 崇实大学经营学转计算机系,韩国崇实大学的IT学科有多顶尖
  17. authorize(权限验证)
  18. python 统计文件夹下的文件夹/某类型文件的数目
  19. DirectX 总结
  20. 安卓开发——tcp连接

热门文章

  1. 深入浅出之函数的参数传递方式
  2. Linux驱动编程 step-by-step (四) 字符设备的注册与设备节点的自动创建
  3. TiKV 源码解析系列文章(二)raft-rs proposal 示例情景分析
  4. Android 软键盘的全面解析,让你不再怕控件被遮盖
  5. 洛谷P4114 Qtree1(树链剖分+线段树)
  6. Spring Cloud Config 加密和解密
  7. Eclipse+Web3j开发以太坊应用
  8. 4.13 apache用户认证,跳转和访问日志
  9. Juint整合Log4j
  10. 微软职位内部推荐-Android Developer