如何把js特效添加在自己做的网页中?

如何把js特效添加在自己做的网页中?,第1张

当要把JavaScript代码插入HTML页面里面,需要使用 <script>标签(同时使用 type 属性来定义脚本语言)。

这样,<script type="text/javascript">和 </script>就可以告诉浏览器 JavaScript 从何处开始,到何处结束。

<html><body><script type="text/javascript">xxxx</script></body></html>

例如:xxxx字段是JavaScript代码效果执行,用来向页面写入输出。

把xxxx命令输入到 <script type="text/javascript">与</script>之间后,浏览器就会把它当作一条 JavaScript 命令来执行。这样浏览器就会向页面写入 "wwww"。

<html><body><script type="text/javascript">document.write("wwww")</script></body></html>

最后的结果就会在页面上显示“wwww”效果,从而实现JS特效在页面上的插入。

使用了particles.js

particles.js可以从github网站下载到最新的源码,网址是 https://github.com/VincentGarreau/particles.js/

使用方法非常简单

第一步,在html中引入脚本文件 particles.min.js,这个文件在下载的压缩包里可以找到

<script src="particles.min.js"></script>

第二步,在html中放入一个div容器,设置id为particles-js。这个一般放在所有网页元素的最后面就可以。

<div id="particles-js"></div>

<style type="text/css">

#particles-js {

position: absolute

top:0

width:100%

}

</style>

第三步,设置窗口样式

<style type="text/css">

#particles-js {

z-index: -1

position: absolute

top: 0

width: 100%

background: #aaa

}</style>

第四步,脚本生成粒子效果,可以单独放在一个js文件里,也可以放在<script>标签里。无论如何,这段脚本要出现在div容器之后。

particlesJS("particles-js", {  "particles": {    "number": {      "value": 380,      "density": {        "enable": true,        "value_area": 800

      }

    },    "color": {      "value": "#ffffff"

    },    "shape": {      "type": "circle",      "stroke": {        "width": 0,        "color": "#000000"

      },      "polygon": {        "nb_sides": 5

      },      "image": {        "src": "img/github.svg",        "width": 100,        "height": 100

      }

    },    "opacity": {      "value": 0.5,      "random": false,      "anim": {        "enable": false,        "speed": 1,        "opacity_min": 0.1,        "sync": false

      }

    },    "size": {      "value": 3,      "random": true,      "anim": {        "enable": false,        "speed": 40,        "size_min": 0.1,        "sync": false

      }

    },    "line_linked": {      "enable": true,      "distance": 150,      "color": "#ffffff",      "opacity": 0.4,      "width": 1

    },    "move": {      "enable": true,      "speed": 6,      "direction": "none",      "random": false,      "straight": false,      "out_mode": "out",      "bounce": false,      "attract": {        "enable": false,        "rotateX": 600,        "rotateY": 1200

      }

    }

  },  "interactivity": {    "detect_on": "canvas",    "events": {      "onhover": {        "enable": true,        "mode": "grab"

      },      "onclick": {        "enable": true,        "mode": "push"

      },      "resize": true

    },    "modes": {      "grab": {        "distance": 140,        "line_linked": {          "opacity": 1

        }

      },      "bubble": {        "distance": 400,        "size": 40,        "duration": 2,        "opacity": 8,        "speed": 3

      },      "repulse": {        "distance": 200,        "duration": 0.4

      },      "push": {        "particles_nb": 4

      },      "remove": {        "particles_nb": 2

      }

    }

  },  "retina_detect": true})

在后台添加js特效可实现这样的效果。

js代码为:

<script language="JavaScript">

<!--

var no = 5 //雪片数目

var speed = 20 //飘动速度。(值越大越慢)

var ns4up = (document.layers) ? 1 : 0 //当前浏览器类型,如果是NS则为1

var ie4up = (document.all) ? 1 : 0 //当前浏览器类型,如果是IE则为1

var s, x, y, sn, cs

var a, r, cx, cy

var i, doc_width = 800, doc_height = 600

x = new Array()

y = new Array()

r = new Array()

cx = new Array()

cy = new Array()

s = 8 //每次下落的高度,越小越平滑,但是也越慢

if (ns4up) { //以NS兼容方式

doc_width = self.innerWidth //取页面宽度

doc_height = self.innerHeight //取页面高度

}

else

if (ie4up) { //以IE兼容方式

doc_width = document.body.clientWidth //取页面宽度

doc_height = document.body.clientHeight//取页面高度

}

for (i = 0i <no++ i) { //根据前面定义的雪片数目写进相应数目的层

initSnow() //随机初始化层的坐标

if (ns4up) { //如果浏览器是NS

//用layer作为雪片(星号)的容器

document.write("<layer name=\"dot"+ i +"\" left=\"1\" ")

document.write("top=\"1\" visibility=\"show\"><font color=\"red\">")

document.write("*</font></layer>")

}

else

if (ie4up) { //如果浏览器是IE

//用div作为雪片的容器

document.write("<div id=\"dot"+ i +"\" style=\"POSITION: ")

document.write("absoluteZ-INDEX: "+ i +"VISIBILITY: ")

document.write("visibleTOP: 15pxLEFT: 15px\"><font color=\"red\">")

document.write("*</font></div>")

}

}

//初始化雪片,生成随机坐标

function initSnow() {

a = 6

r[i] = 1

sn = Math.sin(a)

cs = Math.cos(a)

cx[i] = Math.random() * doc_width + 1

cy[i] = Math.random() * doc_height + 1

x[i] = r[i] * sn + cx[i]

y[i] = cy[i]

}

//计算雪花位置,从新位置上出现,看起来就像是新产生的一样。

function makeSnow() {

r[i] = 1

cx[i] = Math.random() * doc_width + 1

cy[i] = 1

x[i] = r[i] * sn + cx[i]

y[i] = r[i] * cs + cy[i]

}

//雪花下落的计算

function updateSnow() {

r[i] += s

x[i] = r[i] * sn + cx[i]

y[i] = r[i] * cs + cy[i]

}

//在NS浏览器上处理雪片下落的主程序

function SnowdropNS() {

for (i = 0i <no++ i) { //依次处理每片雪花

updateSnow() //下落

if ((x[i] <= 1) || (x[i] >= (doc_width - 20)) || (y[i] >= (doc_height - 20))) { //如果超出屏幕范围

makeSnow() //则调整雪片到新位置上

doc_width = self.innerWidth //更新页面宽度数据

doc_height = self.innerHeight //更新页面高度数据

}

document.layers["dot"+i].top = y[i] //改变层的Y坐标,应用新的位置

document.layers["dot"+i].left = x[i] //改变层的X坐标,应用新的位置

}

setTimeout("SnowdropNS()", speed)

}

//在IE浏览器上处理雪片下落的主程序

function SnowdropIE() {

for (i = 0i <no++ i) { //依次处理每片雪花

updateSnow() //下落

if ((x[i] <= 1) || (x[i] >= (doc_width - 20)) || (y[i] >= (doc_height - 20))) { //如果超出屏幕范围

makeSnow() //则调整雪片到新位置上

doc_width = document.body.clientWidth //更新页面宽度数据

doc_height = document.body.clientHeight //更新页面高度数据

}

document.all["dot"+i].style.pixelTop = y[i] //改变层的坐标,应用新的位置

document.all["dot"+i].style.pixelLeft = x[i]

}

setTimeout("SnowdropIE()", speed) //准备下一次下落过程。

}

if (ns4up) { //如果是NS

SnowdropNS()//调用SnowdropNS使雪片下落

}

else

if (ie4up) { //如果是NS

SnowdropIE()//调用SnowdropIE使雪片下落

}

-->

</script>

说明:可以根据自己的需求根据说明进行相应参数的修改


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11894116.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存