谷歌瀏覽器獲取樣式失敗。。。。。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題文檔</title>
<style>
#div1{
width:200px;
height:200px;
background:#F00;?
border:4px solid #000;
}
</style>
<script>
window.onload=function(){
startMove();
}
function startMove(){
setInterval(function(){
var oDiv=document.getElementById("div1");
//oDiv.style.width=oDiv.offsetWidth-1+'px';
oDiv.style.width=parseInt(getStyle(oDiv,'width'))-10+'px';
},30)
}
function getStyle(obj,attr){
if(obj.currentStyle){?
return obj.currentStyle[attr];
}
else{
return obj.getComputedStyle(obj,false)[attr];
}
}
</script>
</head>
<body>
<div id="div1"></div>
</body>
</html>
2016-10-20
getComputedStyle方法里已經(jīng)有了對象參數(shù)而且此方法是定義在window下的而不是元素對象下,你前面又在元素對象下調(diào)用,所以報錯;(前面"obj."去掉)
2016-10-24
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題文檔</title>
<style>
#div1{
width:200px;
height:200px;
background:#F00;
border:4px solid #000;
}
</style>
<script>
window.onload=function(){
startMove();
}
function startMove(){
setInterval(function(){
var oDiv=document.getElementById("div1");
//oDiv.style.width=oDiv.offsetWidth-1+'px';
oDiv.style.width=parseInt(getStyle(oDiv,'width'))-10+'px';
},30)
}
function getStyle(obj,attr){
if(obj.currentStyle){
return obj.currentStyle[attr];
}
else{
return getComputedStyle(obj,false)[attr];//這個地方是直接調(diào)用前面不用obj.
}
}
</script>
</head>
<body>
<div id="div1"></div>
</body>
</html>
2016-10-14
瀏覽器報錯