js实现图片渐隐渐显的切换效果

原帖地址:http://topic.csdn.net/u/20111115/09/836eeb82-ab49-41a8-a21f-26a232be1194.html?67769

楼主希望对DIV层实现渐显渐隐,看了楼下的解答,不禁感叹js比jQuery苦逼啊!

<!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>
<script type="text/javascript">
window.onload = function()
{
	var testDiv = document.getElementById('test');
	testDiv.style.opacity = 1.0;
	testDiv.onmouseover = show;
	testDiv.onmouseout = hide;
};
var interval1, interval2;
var show = function()
{
	if(interval2) {
         //这里是为了当鼠标在Div渐隐的过程中移到Div上图片立即慢慢重现
		clearInterval(interval2);
	}
	i = document.getElementById('test').style.opacity*100;
	interval1 = setInterval("showRound()",20);
};
var showRound = function()
{
	i++;
	var testDiv = document.getElementById('test');
	if(testDiv.style.opacity != 1.0) {
		testDiv.style.opacity = i/100;
	} else {
		if(interval1) {
			clearInterval(interval1);
		}
	}
}
var hide = function()
{
	if(interval1) {
         //这里是为了当鼠标在Div渐现的过程中从Div上移走图片立即慢慢消失
		clearInterval(interval1);
	}
	j = document.getElementById('test').style.opacity*100;
	interval2 = setInterval("hideRound()",20);
};
var hideRound = function()
{
	j--;
	var testDiv = document.getElementById('test');
	if(testDiv.style.opacity != 0.0) {
		testDiv.style.opacity = j/100;
	} else {
		if(interval2) {
			clearInterval(interval2);
		}
	}
};
</script>
</head>

<body>
<div id="test" style="width:300px; height:250px">
<iframe scrolling="no" width="300" height="250" frameborder="0" src="http://hi.csdn.net/attachment/201111/15/0_1321345637630X.gif"></iframe>
</div>
</body>
</html>

 
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
HTML本身并不能实现图片切换,但可以通过JavaScript或CSS来实现。 一种实现方法是使用JavaScript编写切换图片的函数,并将其绑定到HTML中的按钮或其他元素上。例如: HTML代码: ``` <button onclick="changeImage()">切换图片</button> <img id="myImage" src="image1.jpg"> ``` JavaScript代码: ``` var imageIndex = 1; function changeImage() { var image = document.getElementById("myImage"); if (imageIndex == 1) { image.src = "image2.jpg"; imageIndex = 2; } else { image.src = "image1.jpg"; imageIndex = 1; } } ``` 另一种方法是使用CSS中的动画效果实现图片切换。可以在HTML中设置一个包含多张图片的容器,并将其设置为“轮播图”样式。例如: HTML代码: ``` <div class="slideshow"> <img src="image1.jpg"> <img src="image2.jpg"> </div> ``` CSS代码: ``` .slideshow { position: relative; width: 100%; height: 300px; overflow: hidden; } .slideshow img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; transition: opacity 1s ease-in-out; } .slideshow img:first-child { opacity: 1; } .slideshow img.active { opacity: 1; } @keyframes slideshow { 0% { opacity: 0; } 20% { opacity: 1; } 80% { opacity: 1; } 100% { opacity: 0; } } .slideshow img:nth-child(2) { animation: slideshow 5s linear infinite; } ``` 这样,第一张图片会默认显示,第二张图片会在5秒钟后渐变成显示状态。然后,通过CSS中的动画效果切换到第一张图片,再渐变显示第二张图片,如此循环往复,实现图片切换效果

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值