为什么在IE浏览器下,鼠标经过透明度不改变,哪里出现问题了

<!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" />
<style type="text/css">
#div1{
	width:300px;
	height:300px;
	background:red;
	filter:alpha(opacity:30);/*IE浏览器*/
	opacity:0.3;/*火狐或者其它浏览器*/
}

</style>
<title>无标题文档</title>
<script>
window.onload = function(){
	var oDiv = document.getElementById('div1');
	oDiv.onmouseover = function(){
		starMove(100);
		}
	oDiv.onmouseout = function(){
		starMove(30);
		}
	
	}
	
var timer = null;
var alpha = 30;

function starMove(iTarget){
	oDiv = document.getElementById('div1');
	clearInterval(timer);
	timer = setInterval(function(){
		var speed = 0;
		if(alpha > iTarget)
		{
			speed = -10;
		}
		else
		{
			speed = 10;
			}
		if(alpha == iTarget)
		{
			clearInterval(timer);
		}
		else
		{
			
			alpha+=speed;
			oDiv.style.filter = 'alpha(opactiy:'+alpha+')';/*IE*/
			oDiv.style.opacity =  alpha/100;/*其它浏览器*/
		}
		},30)
	}
</script>
</head>

<body>
<div id="div1"></div>
</body>
</html>

不知道为什么IE不行?

聪明宝贝宝贝
浏览 2094回答 5
5回答

起伏羊

另外 关于opacity这个属性w3c里是这样写的

不知名的前端程序猴

            oDiv.style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+alpha+')';             // oDiv.style.filter = 'alpha(opactiy:'+alpha+')';/*IE*/把你的改成这个,你写得兼容到了10,但是IE8及其以下都不行的。看了楼下的,我也没有注意到你的单词打错了。貌似改对单词就OK了

起伏羊

露珠手癌 打错单词了 53行 是opacity 亲测 ie9和ie11 没效果 其他ie版本有 谷歌 和火狐都有效果

stone310

其实是没有错误的;经过排查,oDiv.style.filter = 'alpha(opactiy:'+alpha+')';/*IE*/ 这个里面opacity删掉重新输入一次就可以了。。。原来我也遇到过一次这个问题,完全一模一样的单词,格式,但是就是不出效果,重新手打一遍就ok了,具体原因不清楚

qq_非诚勿扰_3

如果其他游览器都可以的话换个高版本的ie,ie9以前都不支持透明度变换
打开App,查看更多内容
随时随地看视频慕课网APP