-
运动框架实现思路查看全部
-
不同浏览器对div.offsetLeft属性四舍五入情况不同。当div.style.left:-190.5px时,IE9的div.offsetLeft为-190px,火狐和谷歌都是-191px。div.style.left:-190.55px,IE9,火狐和谷歌的div.offsetLeft均为-191px。IE真是奇葩!!当div.style.left为正数时,四舍五入正常。貌似只有IE9这样.....查看全部
-
getstyle图片效果查看全部
-
function startMove(obj,jason,fn) { clearInterval(obj.timer); var flag=true; obj.timer=setInterval(function(){ for(var attr in jason) { if(attr=="opacity") { var icur=Math.round(parseFloat(getStyle(obj,attr)*100)); } else { var icur=parseInt(getStyle(obj,attr)); } var speed=(jason[attr]-icur)/20; speed=speed>0?Math.ceil(speed):Math.floor(speed); if(icur!=jason[attr]) { flag=false; } if(attr=="opacity") { obj.style.filter="alpha(opacity:"+(icur+speed)+")"; obj.style.opacity=(icur+speed)/100; } else { obj.style[attr]=icur+speed+"px"; } } if(flag) { clearInterval(obj.timer); if(fn) { fn(); } } },30); }查看全部
-
xong phan 1查看全部
-
JSON是一种轻量级的数据交换格式 var json={name:key}多对值可以用逗号隔开var json={a:12,b:2} 遍历json,用 for-in循环 for(var i in json) {alert(i);//弹出对象 alert(json[i]);//弹出对象的值}查看全部
-
现在的 startMove()框架 不能实现同时运动, startMove(li,'width',400); startMove(li,'height',200); 后者会覆盖前者,因为startMove()里先要清除计时器 clearInterval(timer);查看全部
-
ceil英 [siːl]注意发音i: 天花板;向正无穷取整,朝正无穷大方向取整,进一法取整 floo英 [flɔː]r 地板,楼层,层查看全部
-
identifier英 [aɪ'dentɪfaɪə]美 [aɪ'dɛntɪfaɪɚ] n. 标识符,认同者;检验人,鉴定人 filter:alpha(opacity=30);//filter:alpha(opacity:30); opacity:0.3;查看全部
-
1、基础动画实现原理:利用定时器循环改变元素的样式属性。 2、clientWidth=padding+内容width。 offsetWidth=border+padding+内容width。 3、获取当前元素样式 IE currentStyle, firefox getComputedStyle 获取样式和转换字符取整 oDiv.style.width 当width:200px;等样式写在样式表中时,无法直接获得oDiv.style.xxx,(写在内联样式中才表示该元素拥有style属性才能得到oDiv.style.xxx),所以要获取样式,需要通过函数: function getStyle(obj,attr){ if (obj.currentStyle) { return obj.currentStyle[attr];//IE浏览器 } else{ return getComputedStyle(obj,false)[attr]; }; } parseInt(getStyle(obj,'width')) ———————— oDiv.style.width=oDiv.style.width-1+"px";是错误的,因为oDiv.style.width得到的是字符串(如200px),不能直接和-1+"px"连接起来成为新的值,需要用parseInt()方法: oDiv.style.width=parseInt(oDiv.style.width)-1+"px";查看全部
-
oDiv.style.filter='alpha(opacity:'+alpha+')'; oDiv.style.filter='alpha(opacity='+alpha+')'; 两者都能执行,那有什么不同吗? 问:会出现小数不精确的现象, 答:alpha+=speed;在这句话后面加这句话alpha = alpha.toFixed(1)*1;就可以了。 我解释一下这句话的意思toFixed(1)是取小数点后一位数字,而该方法返回的是一个字符串,那么在JS中字符串转换成数值有两种方式,一个是这种:字符串*1可以得到数字,前提字符串中是纯数字,第二种是用parseInt()的方法去转换,这里我比较懒,就用的第一种。查看全部
-
写程序时出现一个常识错误 设置了else{oDiv.style.left=oDiv.offsetLeft+0.5+"px";} 鼠标mouseover时,只移动0.5px以后就不动了,程序没任何错误,这里应该是设置0.5px的问题。查看全部
-
jQuery,animate查看全部
-
运动框架实现思路查看全部
-
currentStyle针对IE浏览器 getComputedStyle 针对firefox浏览器查看全部
举报
0/150
提交
取消