js动画(四)
终于到了最后了,这里要告一段落了,整了个js运动框架,咳咳咳,好冷 啊啊啊啊啊啊,这天气。妈的,工资怎么也不发,啊,说好的
人与人之间的信任呢?哎,气诶,不到150字啊,又是这个梗。。怎么办?说些什么呢?哦,就是今天在尝试做那个,曲面阴影和翘边
阴影的时候,碰到一个问题,就是a:after这个层,想让他到a 层下面,因为a:after层把a层挡住了,搞了,眼睛都快找瞎了,哎,程序
员短命是有道理的。最后,的结果是,还是没找出来。回头要好好的去研究研究z-index这个属性,哪位道友愿意助一臂之力的请留言
,共同进步,共创美好未来。纠结诶,要不要放上来呢?纠结。。。。
这样150 总够了吧。。。。。
js动画同时运动

代码如下:
<script>
window.onload = function() {
var qwe = document.getElementById("sd");
qwe.timer = null;
var opacity = 30;
qwe.onmouseover = function() {
onStart(qwe,{"height":300,"width":400,"opacity":100},5);/*{}括起来的,是用到json,就是obj={a:11,b:12}for(var i in obj)这里的i遍历a,bobj[i],就是所对应的值,,可以去搜一下。*/
}
qwe.onmouseout = function() {
onStart(qwe,{"height":100,"width":200,"opacity":30},-5);
}
} function getStyle(obj, attr) { /*obj对象,就是你要搞哪个元素,attr属性,你要搞哪个的属性*/
if(obj.currentStyle) {
return obj.currentStyle[attr]; /*.currentStyle针对IE*/
} else {
return getComputedStyle(obj, false)[attr]; /* getComputedStyle针对firebox浏览器*/
}
}/*js动画(三)讲过,直接拿来用就可以了*/ function onStart(obj, json, speed,fn) {
clearInterval(obj.timer);/*清除定时器*/
obj.timer = setInterval(function(){ /&定时器实例&/
for(var attr in json){ /*这里就是json for in遍历嘛,就是能同时进行运动的关键*/
if(attr == "opacity"){
var lo = parseInt(getStyle(obj,attr)*100);
/*变速,这里为什么会多减1多加1,你打开调试工具,然后看着的那个数值,和你的目标值对比,你就知道了,可能还要改其他数字*/
speed = (json[attr]-lo)/10;
speed=speed>0?Math.ceil(speed+1):Math.floor(speed); }
else{
var lo = parseInt(getStyle(obj,attr));
/*变速*/
speed = (json[attr]-lo)/8;
speed=speed>0?Math.ceil(speed+2):Math.floor(speed-1);
}
if(lo == json[attr]){
clearInterval(obj.timer);
if(fn){
fn();/*回调函数,是什么东东呢?他可以继续执行这个函数的关键,也就是,链式运动的关键*/
}
}
else{
if(attr == "opacity")
{
lo = (lo+speed)/100;
obj.style[attr] = lo;/*这个又是什么呢?其实就是这样了,obj.style.attr=lo,懂了吧!这样写,我是为了,整合width,height,等差不多格式的*/
} obj.style[attr] = lo+speed+"px";/*跟上面一样,写不下了,写这里,为了上次js动画(三)提出的整合width和height,不信你去看js动画(三),那样很烦*/
}
}
},30) }
js动画(四)的更多相关文章
- JavaScript是如何工作的: CSS 和 JS 动画底层原理及如何优化它们的性能
摘要: 理解浏览器渲染. 原文:JavaScript是如何工作的: CSS 和 JS 动画底层原理及如何优化它们的性能 作者:前端小智 Fundebug经授权转载,版权归原作者所有. 这是专门探索 J ...
- JS动画与CSS3动画
Js动画 show / hide var div = $('#test-show-hide'); div.show('slow'); // 在0.6秒钟内逐渐显示 div.hide(3000); // ...
- 前端(十六)—— JavaScript盒子模型、JS动画、DOM、BOM
JS盒子模型.JS动画.DOM.BOM 一.JS盒模型 1.width | height parseInt(getComputedStyle(ele, null).getPropertyValue(' ...
- 循序渐进BootstrapVue,开发公司门户网站(2)--- 使用wow.js动画组件以及自定义的CSS样式处理动态效果
在我们开发的页面中,让页面有一些动画效果,可以让页面更加有吸引力,只要不是处理太过,一般人还是希望有一些动态效果,如滚动动画加载,悬停处理变化等效果,本篇随笔介绍使用wow.js动画组件以及自定义的C ...
- 【06-23】js动画学习笔记01
<html> <head> <style> * { margin:0; padding:0; } #div1{ width:200px; height:200px; ...
- css动画与js动画的区别
CSS动画 优点: (1)浏览器可以对动画进行优化. 1. 浏览器使用与 requestAnimationFrame 类似的机制,requestAnimationFrame比起setTimeout ...
- CSS VS JS动画,哪个更快[译]
英文原文:https://davidwalsh.name/css-js-animation 原作者Julian Shapiro是Velocity.js的作者,Velocity.js是一个高效易用的js ...
- JS动画理论
动画(Animation) 动画意味着随着时间而变化,尤其指视觉上的变化,包括位置.形态等的变化.运动基本上表现为物体随时间,发生位置上的变化:形态基本表现为大小.颜色.透明度.形状等随时间的变化. ...
- css与 js动画 优缺点比较
我们经常面临一个抉择:到底使用JavaScript还是CSS动画,下面做一下对比 JS动画 缺点:(1)JavaScript在浏览器的主线程中运行,而主线程中还有其它需要运行的JavaScript脚本 ...
随机推荐
- css Loading 教程
http://www.cnblogs.com/lhb25/p/loading-spinners-animated-with-css3.html
- Struts2--带参数的结果集
带参数的结果集: 配置文件: <result type="redirect">/user_success.jsp?t=${type}</result> js ...
- fsck害了我很久了,必须关掉,因为他每次打卡都要推迟数十分钟。
http://crashmag.net/disable-filesystem-check-fsck-at-boot-time Disable the filesystem check (fsck) a ...
- vmware中的bridge、nat、host-only的区别
概述: VMWare提供了三种工作模式,它们是bridged(桥接模式).NAT(网络地址转换模式)和host-only(主机模式).要想在网络管理和维护中合理应用它们,你就应该先了解一下这三种工作模 ...
- php命名空间如何引入一个变量类名?
例子如下: $className = 'Test'; 正常 new \Require\allClass\Test(); 当然OK,但是 new \Require\allClass\$className ...
- CSS中的浮动清除
先来看一个实验:现在有两个div,div身上没有任何属性.每个div中都有li,这些li都是浮动的. 理想的效果:可实际的效果: 这个地方就涉及到浮动,因为两个父元素div都没有高度(或者小于子元素的 ...
- LAMP优化
LAMP系统优化是非常必要的,一个好的优化能使系统运作的越快,从而提高工作效率,下面我将从几方面给大家详细介绍下LAMP系统优化的内容. 一.硬件优化 1.升级硬件的一般规则:对于 PHP 脚本而言, ...
- (中等) HDU 3416 Marriage Match IV,SPFA+SAP。
Description Do not sincere non-interference. Like that show, now starvae also take part in a show, b ...
- 三、MapReduce学习
MapReducer是一种编程模型,用于大规模数据集(大于1TB)的并行运算.概念"Map(映射)"和"Reduce(化简)" ...
- java.lang.UnsupportedClassVersionError: com/T : Unsupported major.minor version问题解决
编译的时候jdk版本为1.8 2.运行的时候jdk版本为1.7 解决办法:将编译的jdk版本降为1.7,问题解决