day12--函数返回值和定时器回顾

来源:互联网 发布:javascript图片轮播 编辑:程序博客网 时间:2024/05/01 03:32
     $('div1')为已经封装好的函数,通过获取到其id找到其元素的位置
$('div1').style.cssText = 'width:350px;';  //给id为div1的元素设置style属性值

oDiv.currentStyle.width;    此语句在正常浏览器下不能获取也就是说标准浏览器下不兼容,IE6\IE7\IE8\IE9兼容(通过调"浏览器模式"以及"文档模式") 



getComputedStyle(oDiv).width;  此语句系统已封装好的函数,正常浏览器下兼容;在IE6\IE7\IE8不兼容


--------------------------------------------

//通过检查属性是否存在对不同浏览器实现兼容问题

if( $('div1').currentStyle ){                   
alert( $('div1').currentStyle.width );                          //IE6\IE7\IE8\IE9兼容

} else {
alert( getComputedStyle( $('div1'), 250 ).width );      //正常浏览器下兼容
// FF 4.0 之前
}

====>  转换成三目运算符     条件?代码1:代码2       条件1如果成立则执行代码1;条件1如果不成立则执行代码2

function getStyle( obj, attr ){
    return obj.currentStyle ? obj.currentStyle[attr] : getComputedStyle( obj )[attr];       //变化的属性则用[],而不用.

}

-----------------------------------

不要获取复合样式

alert(getComputedStyle(oDiv).background);



不要获取单一样式

alert(getComputedStyle(oDiv).backgroundColor);




--------------------------------------

定时器
timer=setInterval( 函数, 毫秒 );            多少毫秒后执行该函数(每隔多少毫秒执行该函数)
clearInterval( timer );     清除

var timer = setTimeout( 函数, 毫秒 );     执行一次(像炸弹)
clearTimeout( timer );


for(var i=0;i<1000;i++){
   document.title=i;      //此时i瞬间为999,上面一行代码执行速度跟处理器处理有关,所以不能在用定时器来调用这个
}


需求:通过点击按钮,网页的标题从1开始加起来,当到100就停止

<input id="btn1" type="button" value="按钮" />
<script>
var oBtn=document.getElementById("btn1");
var i=0;
var timer=null;
oBtn.onclick=function (){
timer=setInterval(fn1,300);
}
function fn1(){
        i++;
document.title=i;
if(i==100){
clearInterval(timer);
}
}
</script>


0 0
原创粉丝点击