IE瀏覽器 濾鏡透明度問題
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>邊距</title>
<style type="text/css">
*{margin:0;padding:0;}
#box1{
width:200px;
height:200px;
background:red;
filter:alpha(opacity:30);
opacity:0.3;
}
</style>
<script type="text/javascript">
window.onload=function(){
var oDiv = document.getElementById("box1");
oDiv.onmouseover = function(){
startMove(100);
}
oDiv.onmouseout = function(){
startMove(30);
}
}
var timer=null;
var alpha=30;
function startMove(itarget){
var speed=30;
var oDiv = document.getElementById("box1");
clearInterval(timer);
timer=setInterval(function(){
if (alpha>itarget){
speed = -10;
}
else{
speed = 10;
}
if(alpha == itarget){
clearInterval(timer);
}
else{
alpha+=speed;
oDiv.style.opacity=alpha/100;
oDiv.style.filter='alpha(opacity='+alpha+')';
}
},50);
}
</script>
</head>
<body>
? ?<div id="box1"></div>
</body>
</html>
想知道oDiv.style.filter='alpha(opacity='+alpha+')';改變透明度這里為什么這么寫'+alpha+'?alpha不是變量嗎?應(yīng)該可以直接等于alpha???
2016-03-04
'alpha(opacity='+alpha+')'你把這個(gè)分開三部分看就清楚了?
第一部分是字符?'alpha(opacity='?
第二部分是變量?+alpha+?
第三部分是字符 ?')'
2016-01-04
你加的是變量??! ?字符串拼接,就是把需要連接到一起的數(shù)值或字符,拼接到一起組成新的值。
2015-12-27
我查到的:IE的透明度的屬性從IE4-IE8使用filter: alpha(opacity=number),這里的number是0-100之間的整數(shù)數(shù)值,IE8中我們也可以用-ms-filter: "alpha(opacity=number)"。IE中還支持progid:DXImageTransform.Microsoft.Alpha(Opacity=xx)這種寫法,但是不建議使用。在這里,number是0-100之間的整數(shù)數(shù)值,但是'+alpha+'不是字符串了嗎?
2015-12-27
字符串拼接,你看看IE透明度用的CSS屬性。所以不能直接等于,變量不加引號(hào),但是字符串得加。