js动画效果星星(js动画特效)

虚拟屋 2022-12-14 13:37 编辑:admin 290阅读

1. js动画特效

dreamweaver脚本链接就是通过给某个文字或者图片添加一个JS特效代码,通过是链接到一个JS代码.形式如:

<a href="javascript:window.close()">关闭窗口</a>

在我们自己做网站时,网站前台如果需要与数据库链接,有时也会用到脚本链接.

2. js动画特效代码

1.第一步,点击文本框,在属性栏中填写你需要的文字;

2.第二步,为文本框文字添加css属性,点击文本框,可以在css面板中直接选择颜色或填写值;

3.(可以在网页中直接定义css,也可以新建一个css文件) 显示效果 如果要实现鼠标点击灰色文字自动消失;

4.需要使用js编程,可以在网上找js或jquery效果代码添加进页面内。

3. js网页特效动画

html5相对来说更好一些,结合css3中的过渡和动画等实现基本的动画效果,相对flash来讲,文件尺寸小,关键的是利于维护和改版,只需要改动代码,而flash的话得修改源文件。

4. js animate动画效果

要是覆盖了就没办法。

历史记录只记录过程不保存源文件。只能下次注意。有FLJS自动保存脚本可以找下。至于现在,你可以把导出的先前SWF导入到FLASH里看下是否可以使用。

5. js动画特效框架

jquery的插件有:

1、jQuery表单验证插件:Validation

(1)Validation简介

    最常使用JavScript的场合就是表单的验证,而jQuery作为一个优秀的JavaScript库,也提供了一个优秀的表单验证插件——Validation.Validation是历史最悠久的jQuery插件之一,经过了全球范围内不同项目的验证,并得到了许多Web开发者的好评。作为一个标准的验证方法库,Validation拥有如下优点:

内置验证规则:拥有必填、数字、E-Mail、URL和信用卡号码等19类内置验证规则

自定义验证规则:可以很方便地自定义验证规则

简单强大的验证信息提示:默认了验证信息提示,并提供自定义覆盖默认提示信息的功能

实时验证:可以通过keyup或blur事件触发验证,而不仅仅在表单提交的时候验证。

2、jQuery表单插件:Form

(1)Form插件简介

    jQuery Form插件是一个优秀的Ajax表单插件,可以非常容易地、无侵入地升级HTML表单以支持Ajax。jQuery有两个核心方法——ajaxForm()和ajaxSubmit(),它们集合了从控制表单元素到决定如何管理提交进程的功能。另外iain,插件还包括其他的一些方法:formToArray()、formSerialize()、fieldSerialize()、fieldValue()、clearForm()和resetForm()等

3、动态绑定事件插件:livequery

(1)livequery插件简介

    jQuery的事件绑定功能使得jQuery代码与HTML代码能够完全分离,这样代码的层次关系更加清晰,维护起来也更加简单。然而对于动态加载到页面的HTML元素,每次都需要重新绑定事件到这些元素上,十分不便。一款新的插件由此产生,即livequery,可以利用它给相应的DOM元素注册时间或者触发回调函数函数。不仅当前选择器匹配的元素会被绑定事件,而且后来通过JavaScript添加的元素都会被绑定事件。当元素不再和选择器匹配时,livequery会自动取消事件注册,使得开发者不再需要关注HTML元素的来源,只需要关注如何编写其绑定的事件即可。

    通过jQuery选择器选择一个DOM元素,livequery插件会实时地在整个DOM范围将其持久化。这意味着无论元素是先前存在的还是后来动态加载的,事件都会被绑定,就像是CSS给元素添加样式一样。同时,这款插件几乎在没占用什么资源的情况下就做到了这些功能。

4、jQuery UI插件

(1)jQuery UI简介:

   jQuery UI源自于一个jQuery插件——Interface。Interface插件最早版本我1.2,只支持jQuery1.1.2的版本,后来有人对Interface的大部分代表基于jQuery1.2的API进行重构,并统一了API。由于改进重大,因此版本号不是1.3而是直接跳到1.5,并且改名为jQuery UI。

    jQuery UI主要分为3个部分,交互、微件和效果库

交互。这里都是一些 与鼠标 交互相关的内容。包括拖动,置放,缩放,选择 和排序 等待。微件(Widget)中有部分是基于这些交互组建来制作的。此库需要 一个jQuery UI 核心库——ui.core.js支持

微件。这里主要是一些界面的扩展。里边包括 了手风琴导航,自动完成,取色器,对话框,滑块,标签 ,日历,放大镜,进度条和微调控制器等待。此库需要 一个jQuery UI 核心库——ui.core.js支持

效果库。此库用于提供丰富的动画效果,让动画不再局限于animate()方法。效果库有自己的一套核心即effects.core.js,无需jQuery的核心库ui.core.js支持

5、管理Cookie的插件:Cookie

(1)Cookie插件简介

    Cookie是网站设计者放置在客户端的小文本文件。Cookie能为用户提供很多的便利,例如购物网站存储用户曾经浏览过的产品列表,或者门户网站记住用户喜欢选择浏览哪类新闻。在用户运行的情况下,还可以存储用户的登陆情况,使得用户在访问网站时不必每次都键入这些信息。

    jQuery提供了一个十分简单的插件来管理网站的Cookie,该插件的名称也是Cookie.

6、模态窗口插件:SimpleModal

(1)SimpleModal插件简介

    SimpleModal是一个轻量级的jQuery插件,它为模态窗口的开发提供了一个强有力的接口,可以把它当作模态窗口的框架。SimpleModal非常的灵活,可以创建你能够想象到的任何东西i,并且 你还不需要考虑UI开发中的跨浏览器相关问题。

6. js动画效果

HTML5<canvas>元素用于图形的绘制,通过脚本(通常是JavaScript)来完成。<canvas>标签只是图形容器,您必须使用脚本来绘制图形。你可以通过多种方法使用canvas绘制路径,盒、圆、字符以及添加图像。

7. js动画效果代码案例

1、拖入一个编辑控件到屏幕,设置“下拉”属性为“ListBox”

2、设置Function-CODE

3、listbox的列表的取值有三种方法:A)默认取Dictionary;B)使用“VRM_SET_VALUES"函数在PBO中设置,代码见后面代码C)使用ProcessOnValue-request事件和“F4IF_INT_Table_Value_request”函数设置输入帮助其中C优于B,B优于A代码示例:

*屏幕事件processbeforeoutput.modulestatus_0100.modulefill_carrid.

8. js动画特效可以做背景吗

javascript背景图片导入的方法:首先新建一个html文件并使用div创建一个模块;

然后在css标签内,通过id设置div的样式;

接着给button按钮绑定onclick点击事件;

最后在setBg()函数中实现背景图片的导入即可。

9. js 页面特效

方法/步骤

1/4

进入b站后,找到底部菜单栏中间的加号,点击打开;

2/4

选择打开拍摄,并进入拍摄视频页面;

3/4

在拍摄下方选项中,点击打开特效;

4/4

找到特效中的特效,点击使用,就可以看到并可以拍摄制作视频了。

10. js炫酷动画

知道如何使用CSS3动画比知道如何使用<canvas>元素更重要:因为浏览器能够优化那些元素的性能(通常是他们的样式,比如CSS),而我们使用canvas自定义画出来的效果却不能被优化。原因又在于,浏览器使用的硬件主要取决于显卡的能力。目前,浏览器没有给予我们直接访问显卡的权力,比如,每一个绘画操作都不得不在浏览器中先调用某些函数。 1.canvas html代码:

代码如下:

<html> <head> <meta charset="UTF-8" /> <title>Animation in HTML5 using the canvas element</title> </head> <body onload="init();"> <canvas id="canvas" width="1000" height="600">Your browser does not support the <code><canvas></code>-element.Please think about updating your brower!</canvas> <div id="controls"> <button type="button" onclick="speed(-0.1);">Slower</button> <button type="button" onclick="play(this);">Play</button> <button type="button" onclick="speed(+0.1)">Faster</button> </div> </body> </html>

js代码: 定义一些变量:

代码如下:

var dx=5, //当前速率 rate=1, //当前播放速度 ani, //当前动画循环 c, //画图(Canvas Context) w, //汽车[隐藏的](Canvas Context) grassHeight=130, //背景高度 carAlpha=0, //轮胎的旋转角度 carX=-400, //x轴方向上汽车的位置(将被改变) carY=300, //y轴方向上汽车的位置(将保持为常量) carWidth=400, //汽车的宽度 carHeight=130, //汽车的高度 tiresDelta=15, //从一个轮胎到最接近的汽车底盘的距离 axisDelta=20, //汽车底部底盘的轴与轮胎的距离 radius=60; //轮胎的半径

为了实例化汽车canvas(初始时被隐藏),我们使用下面的自执行的匿名函数

代码如下:

(function(){ var car=document.createElement('canvas'); //创建元素 car.height=carHeight+axisDelta+radius; //设置高度 car.width=carWidth; //设置宽度 w=car.getContext('2d'); })();

点击“Play”按钮,通过定时重复执行“画汽车”操作,来模拟“帧播放”功能:

代码如下:

function play(s){ //参数s是一个button if(ani){ //如果ani不为null,则代表我们当前已经有了一个动画 clearInterval(ani); //所以我们需要清除它(停止动画) ani=null; s.innerHTML='Play'; //重命名该按钮为“播放” }else{ ani=setInterval(drawCanvas,40); //我们将设置动画为25fps[帧每秒],40/1000,即为二十五分之一 s.innerHTML='Pause'; //重命名该按钮为“暂停” } }

加速,减速,通过以下方法,改变移动距离的大小来实现:

代码如下:

function speed(delta){ var newRate=Math.max(rate+delta,0.1); dx=newRate/rate*dx; rate=newRate; } 页面加载的初始化方法: //init function init(){ c=document.getElementById('canvas').getContext('2d'); drawCanvas(); }

主调方法:

代码如下:

function drawCanvas(){ c.clearRect(0,0,c.canvas.width, c.canvas.height); //清除Canvas(已显示的),避免产生错误 c.save(); //保存当前坐标值以及状态,对应的类似“push”操作 drawGrass(); //画背景 c.translate(carX,0); //移动起点坐标 drawCar(); //画汽车(隐藏的canvas) c.drawImage(w.canvas,0,carY); //画最终显示的汽车 c.restore(); //恢复Canvas的状态,对应的是类似“pop”操作 carX+=dx; //重置汽车在X轴方向的位置,以模拟向前走 carAlpha+=dx/radius; //按比例增加轮胎角度 if(carX>c.canvas.width){ //设置某些定期的边界条件 carX=-carWidth-10; //也可以将速度反向为dx*=-1; } }

画背景:

代码如下:

function drawGrass(){ //创建线性渐变,前两个参数为渐变开始点坐标,后两个为渐变结束点坐标 var grad=c.createLinearGradient(0,c.canvas.height-grassHeight,0,c.canvas.height); //为线性渐变指定渐变色,0表示渐变起始色,1表示渐变终止色 grad.addColorStop(0,'#33CC00'); grad.addColorStop(1,'#66FF22'); c.fillStyle=grad; c.lineWidth=0; c.fillRect(0,c.canvas.height-grassHeight,c.canvas.width,grassHeight); }

画车身:

代码如下:

function drawCar(){ w.clearRect(0,0,w.canvas.width,w.canvas.height); //清空隐藏的画板 w.strokeStyle='#FF6600'; //设置边框色 w.lineWidth=2; //设置边框的宽度,单位为像素 w.fillStyle='#FF9900'; //设置填充色 w.beginPath(); //开始绘制新路径 w.rect(0,0,carWidth,carHeight); //绘制一个矩形 w.stroke(); //画边框 w.fill(); //填充背景 w.closePath(); //关闭绘制的新路径 drawTire(tiresDelta+radius,carHeight+axisDelta); //我们开始画第一个轮子 drawTire(carWidth-tiresDelta-radius,carHeight+axisDelta); //同样的,第二个 }

画轮胎:

代码如下:

function drawTire(x,y){ w.save(); w.translate(x,y); w.rotate(carAlpha); w.strokeStyle='#3300FF'; w.lineWidth=1; w.fillStyle='#0099FF'; w.beginPath(); w.arc(0,0,radius,0,2*Math.PI,false); w.fill(); w.closePath(); w.beginPath(); w.moveTo(radius,0); w.lineTo(-radius,0); w.stroke(); w.closePath(); w.beginPath(); w.moveTo(0,radius); w.lineTo(0,-radius); w.stroke(); w.closePath(); w.restore(); }

由于原理简单,并且代码中作了详细注释,这里就不一一讲解! 2.CSS3 你将看到我们未通过一句JS代码就完全实现了和上面一样的动画效果: HTML代码:

代码如下:

<html> <head> <meta charset="UTF-8" /> <title>Animations in HTML5 using CSS3 animations</title> </head> <body> <div id="container"> <div id="car"> <div id="chassis"></div> <div id="backtire" > <div ></div> <div ></div> </div> <div id="fronttire" > <div ></div> <div ></div> </div> </div> <div id="grass"></div> </div> <footer></footer> </body> </html> CSS代码: body { padding:0; margin:0; }

定义车身与轮胎转到的动画(你会看到基本每一个动画都有四个版本的定义:原生版本/webkit【Chrome|Safari】/ms【为了向后兼容IE10】/moz【FireFox】)

代码如下:

/*定义动画:从-400px的位置移动到1600px的位置 */ @keyframes carAnimation { 0% { left:-400px; } /* 指定初始位置,0%等同于from*/ 100% { left:1600px; } /* 指定最终位置,100%等同于to*/ } /* Safari and Chrome */ @-webkit-keyframes carAnimation { 0% {left:-400px; } 100% {left:1600px; } } /* Firefox */ @-moz-keyframes carAnimation { 0% {left:-400; } 100% {left:1600px; } } /*IE暂不支持,此处定义是为了向后兼容IE10*/ @-ms-keyframes carAnimation { 0% {left:-400px; } 100%{left:1600px; } } @keyframes tyreAnimation { 0% {transform: rotate(0); } 100% {transform: rotate(1800deg); } } @-webkit-keyframes tyreAnimation { 0% { -webkit-transform: rotate(0); } 100% { -webkit-transform: rotate(1800deg); } } @-moz-keyframes tyreAnimation { 0% { -moz-transform: rotate(0); } 100% { -moz-transform: rotate(1800deg); } } @-ms-keyframes tyreAnimation { 0% { -ms-transform: rotate(0); } 100% { -ms-transform: rotate(1800deg); } } #container { position:relative; width:100%; height:600px; overflow:hidden; /*这个很重要*/ } #car { position:absolute; /*汽车在容器中采用绝对定位*/ width:400px; height:210px; /*汽车的总高度,包括轮胎和底盘*/ z-index:1; /*让汽车在背景的上方*/ top:300px; /*距顶端的距离(y轴)*/ left:50px; /*距左侧的距离(x轴)*/ /*以下内容赋予该元素预先定义的动画及相关属性*/ -webkit-animation-name:carAnimation; /*名称*/ -webkit-animation-duration:10s; /*持续时间*/ -webkit-animation-iteration-count:infinite; /*迭代次数-无限次*/ -webkit-animation-timing-function:linear; /*播放动画时从头到尾都以相同的速度*/ -moz-animation-name:carAnimation; /*名称*/ -moz-animation-duration:10s; /*持续时间*/ -moz-animation-iteration-count:infinite; /*迭代次数-无限次*/ -moz-animation-timing-function:linear; /*播放动画时从头到尾都以相同的速度*/ -ms-animation-name:carAnimation; /*名称*/ -ms-animation-duration:10s; /*持续时间*/ -ms-animation-iteration-count:infinite; /*迭代次数-无限次*/ -ms-animation-timing-function:linear; /*播放动画时从头到尾都以相同的速度*/ animation-name:carAnimation; /*名称*/ animation-duration:10s; /*持续时间*/ animation-iteration-count:infinite; /*迭代次数-无限次*/ animation-timing-function:linear; /*播放动画时从头到尾都以相同的速度*/ } /*车身*/ #chassis { position:absolute; width:400px; height:130px; background:#FF9900; border: 2px solid #FF6600; } /*轮胎*/ .tire { z-index:1; /*同上,轮胎也应置于背景的上方*/ position:absolute; bottom:0; border-radius:60px; /*圆半径*/ height:120px; /* 2*radius=height */ width:120px; /* 2*radius=width */ background:#0099FF; /*填充色*/ border:1px solid #3300FF; -webkit-animation-name:tyreAnimation; -webkit-animation-duration:10s; -webkit-animation-iteration-count:infinite; -webkit-animation-timing-function:linear; -moz-animation-name:tyreAnimation; -moz-animation-duration:10s; -moz-animation-iteration-count:infinite; -moz-animation-timing-function:linear; -ms-animation-name:tyreAnimation; -ms-animation-duration:10s; -ms-animation-iteration-count:infinite; -ms-animation-timing-function:linear; animation-name:tyreAnimation; animation-duration:10s; animation-iteration-count:infinite; animation-timing-function:linear; } #fronttire { right:20px; /*设置右边的轮胎距离边缘的距离为20*/ } #backtire { left:20px; /*设置左边的轮胎距离边缘的距离为20*/ } #grass { position:absolute; /*背景绝对定位在容器中*/ width:100%; height:130px; bottom:0; /*让背景色线性渐变,bottom,表示渐变的起始处,第一个颜色值是渐变的起始值,第二个颜色值是终止值 */ background:linear-grdaient(bottom,#33CC00,#66FF22); background:-webkit-linear-gradient(bottom,#33CC00,#66FF22); background:-moz-linear-gradient(bottom,#33CC00,#66FF22); background:-ms-linear-gradient(bottom,#33CC00,#66FF22); } .hr,.vr { position:absolute; background:#3300FF; } .hr { height:1px; width:100%; /*轮胎的水平线*/ left:0; top:60px; } .vr { width:1px; height:100%; /*轮胎的垂直线*/ left:60px; top:0; }

3.JQuery与CSS3 这是一个效果与兼容性俱佳的方式(特别对于IE9暂不支持CSS3而言) HTML代码(可以看到与CSS3中的HTML代码并无不同):

代码如下:

<html> <head> <meta charset="UTF-8" /> <title>Animations in HTML5 using CSS3 animations</title> </head> <body> <div id="container"> <div id="car"> <div id="chassis"></div> <div id="backtire" > <div ></div> <div ></div> </div> <div id="fronttire" > <div ></div> <div ></div> </div> </div> <div id="grass"></div> </div> <footer></footer> </body> </html> CSS: <style> body { padding:0; margin:0; } #container { position:relative; width:100%; height:600px; overflow:hidden; /*这个很重要*/ } #car { position:absolute; /*汽车在容器中采用绝对定位*/ width:400px; height:210px; /*汽车的总高度,包括轮胎和底盘*/ z-index:1; /*让汽车在背景的上方*/ top:300px; /*距顶端的距离(y轴)*/ left:50px; /*距左侧的距离(x轴)*/ } /*车身*/ #chassis { position:absolute; width:400px; height:130px; background:#FF9900; border: 2px solid #FF6600; } /*轮胎*/ .tire { z-index:1; /*同上,轮胎也应置于背景的上方*/ position:absolute; bottom:0; border-radius:60px; /*圆半径*/ height:120px; /* 2*radius=height */ width:120px; /* 2*radius=width */ background:#0099FF; /*填充色*/ border:1px solid #3300FF; -o-transform:rotate(0deg); /*旋转(单位:度)*/ -ms-transform:rotate(0deg); -webkit-transform:rotate(0deg); -moz-transform:rotate(0deg); } #fronttire { right:20px; /*设置右边的轮胎距离边缘的距离为20*/ } #backtire { left:20px; /*设置左边的轮胎距离边缘的距离为20*/ } #grass { position:absolute; /*背景绝对定位在容器中*/ width:100%; height:130px; bottom:0; /*让背景色线性渐变,bottom,表示渐变的起始处,第一个颜色值是渐变的起始值,第二个颜色值是终止值 */ background:linear-grdaient(bottom,#33CC00,#66FF22); background:-webkit-linear-gradient(bottom,#33CC00,#66FF22); background:-moz-linear-gradient(bottom,#33CC00,#66FF22); background:-ms-linear-gradient(bottom,#33CC00,#66FF22); } .hr,.vr { position:absolute; background:#3300FF; } .hr { height:1px; width:100%; /*水平线*/ left:0; top:60px; } .vr { width:1px; height:100%; /*垂直线*/ left:60px; top:0; } </style>

JS代码: 首先引入在线API:

代码如下:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>

实现动画代码(相当简洁):

代码如下:

<script> $(function(){ var rot=0; var prefix=$('.tire').css('-o-transform')?'-o-transform':($('.tire').css('-ms-transform')?'-ms-transform':($('.tire').css('-moz-transform')?'-moz-transform':($('.tire').css('-webkit-transform')?'-webkit-transform':'transform'))); var origin={ /*设置我们的起始点*/ left:-400 }; var animation={ /*该动画由jQuery执行*/ left:1600 /*设置我们将移动到的最终位置*/ }; var rotate=function(){ /*该方法将被旋转的轮子调用*/ rot+=2; $('.tire').css(prefix,'rotate('+rot+'deg)'); }; var options={ /*将要被jQuery使用的参数*/ easing:'linear', /*指定速度,此处只是线性,即为匀速*/ duration:10000, /*指定动画持续时间*/ complete:function(){ $('#car').css(origin).animate(animation,options); }, step:rotate }; options.complete(); }); </script>

11. JavaScript特效

跟了webgl一年,我一直是十分坚信这个将会成为前端工程师的主要工作。

炫酷的特效,甚至vr效果。然而webgl一直有点劲头不足,先不说在应用方面,就算在前端程序员里,知道的人不是特别多。所以webgl现在面对的最大问题, 第一,实际应用的不足。第二,支持太烂,除了一些很新版本的现代浏览器,支持率真的很差。移动端上几乎没有支持。试想一下,现在一个前端技术在手机上不兼容,那应用起来真的很困难。webgl我坚信他会成为一个很酷很有用的东西,只是时间可能要久一点