最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

js中3d图片切换的图文实例

来源:动视网 责编:小采 时间:2020-11-27 20:17:39
文档

js中3d图片切换的图文实例

js中3d图片切换的图文实例:效果图: 代码块:<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> *{ margin: 0
推荐度:
导读js中3d图片切换的图文实例:效果图: 代码块:<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> *{ margin: 0
 效果图:

代码块:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="UTF-8">
	<title></title>
	<style type="text/css">
	*{
	margin: 0px;
	padding: 0px;
	}
	body{
	background: #000000;
	overflow-x: hidden;
	}
	#banner{
	width: 300px;
	height: 200px;
	margin: 100px auto;
	position: relative;
	transform-style: preserve-3d;
	perspective: 800px;
	}
	#banner img{
	width: 100%;
	height: 100%;
	position: absolute;
	transition: all 1s ease-in 0s; /*改变时用过渡*/
	-webkit-box-reflect:below 3px -webkit-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,1));
                     /*图片的阴影效果*/
	
	}
	
	#banner .left{ /*图片在左边的状态*/
	transform: rotateY(45deg) translateZ(-100px);
	}
	#banner .right{  /*图片在右边的状态*/
	transform: rotateY(-45deg) translateZ(-100px);
	}
	#banner .center{  /*图片在中间展示时的状态*/
	transform: rotateY(0deg) translateZ(100px);
	}
	</style>
	</head>
	<body>
	<div id="banner">
	<img src="image/01.jpeg">
	<img src="image/02.jpeg">
	<img src="image/03.jpeg">
	<img src="image/04.jpeg">
	<img src="image/05.jpg">
	<img src="image/06.png">
	<img src="image/07.png">
	<img src="image/05.jpg">
	<img src="image/08.png">
	</div>
	
	<script type="text/javascript">
	window.onload=function(){
	var oImgs=document.getElementsByTagName("img"); //获取所有图片
	var ban=Math.floor(oImgs.length/2); //去所有图片的中间值,取一下正数,因为没有为小数的下标
	yun(ban)
	function yun(ban){ //写一个图片改变状态的方法
	for(var i=0;i<oImgs.length;i++){ //循环所有图片
	if(i<ban){ //当图片小于中间值时说明在左边,添加左边的class名
	oImgs[i].className="left";
	oImgs[i].style.left= -((ban-i)*100) + "px";
                                  //每张图片位置都有距离所以改变他的left值,当图片在左边的时候他的位置应该是负值。因为第一张图片离
                                  //中间的最远所以 中间值减去 图片的下标 在乘一下你认为每张间隔的合适位置;这样左边就出来
                                  //4-0 = 4 4*100=400 这样第一张就到了最远 以此类推

	}else if(i>ban){
	oImgs[i].className="right";
	oImgs[i].style.left= ((i-ban)*100)+ "px";
                                  //设置他的右边值,右边距离左边是正值 ,所以要是正的;还是和上面类似;
                                  //当i值大于 中间值时;说明到右边了,添加右边的样式;
                                  //5-4=1 1*100 = 100;

                                  //这样得出左边第一张图片的距离;
                                  //ps:因为图片的的顺序;左边先设的第一张;右边也是第一张;这样顺序就不会错。

	}else if(i==ban){
	oImgs[i].className="center";
	oImgs[i].style.left= "0px";
	}
	}
	}
	for(var x=0;x<oImgs.length;x++){
	oImgs[x].index=x;
	oImgs[x].onclick=function(){
	yun(this.index)
	}
	}
	}
	
	
	
	</script>
	
	
	</body>
</html>

文档

js中3d图片切换的图文实例

js中3d图片切换的图文实例:效果图: 代码块:<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> *{ margin: 0
推荐度:
标签: 图片 切换 实现
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top