JavaScript学习之简单的放大镜
来源:互联网 发布:it luggage 编辑:程序博客网 时间:2024/06/06 01:37
简单的放大镜
js代码:
<script type="text/javascript"> //鼠标移到box1上去添加蒙板 //获取box1元素 var box1 = document.getElementsByClassName("box1")[0]; var box2=document.getElementsByClassName("box2")[0]; var img=document.getElementsByClassName("img")[0]; var num=0; //鼠标移入事件 box1.onmouseenter = function() { //alert(1) //创建蒙板 var m_back = document.createElement("div"); //给蒙版div设置classname m_back.className = "mengban"; //将蒙版追加给box1 this.appendChild(m_back); //box2显示出来 box2.style.display="block"; //将小图的图片路径对应大图的图片路径 var num=img.src.substring(img.src.length-5,img.src.length-4); box2.style.backgroundImage="url(./img/big"+num+".jpg)"; } //鼠标移出事件 box1.onmouseleave = function() { //alert(1) //移出蒙版 document.getElementsByClassName("mengban")[0].remove(); //将box2隐藏 box2.style.display="none"; } //鼠标移动事件,鼠标移动蒙板跟随移动,大图随之变化 box1.onmousemove = function(event) { //获取蒙板元素 var m = document.getElementsByClassName("mengban")[0]; //获取鼠标的坐标 var x = event.pageX; var y = event.pageY; //蒙板跟随移动 m.style.top = y-350 + "px"; m.style.left = x-350 + "px"; //鼠标移动控制大图 box2.style.backgroundPosition=(-x*1.2)+"px "+(-y*1.3)+"px"; } //鼠标点击小图 //获取所有的小图元素 var smallimg=document.getElementsByClassName("smallimg"); //设置默认第一个小图边框样式 smallimg[0].style.border="1px solid red"; for(var i=0;i<smallimg.length;i++){ smallimg[i].index=i+1;//自定义属性 //点击小图事件 smallimg[i].onclick=function (){ for(var j=0;j<smallimg.length;j++){ //设置所有的小图边框样式 smallimg[j].style.border="1px solid silver"; } //设置当前点击的小图的边框样式 this.style.border="1px solid red"; //获取中图src img.src="./img/mid"+this.index+".jpg"; } } </script>
css代码:
<style type="text/css"> *{ margin: 0; padding: 0; } .big_box2{ height: 352px; } .box1 { width: 350px; height: 350px; border: 1px solid #000; position: relative; overflow: hidden; float: left; } .box2 { width: 350px; height: 350px; border: 1px solid silver; float: left; background-image: url(img/big1.jpg); background-repeat: no-repeat; display: none; } .img { position: absolute; } .mengban { width: 100px; height: 100px; border: 300px #ccc solid; opacity: 0.5; position: absolute; z-index: 2; } .smallimg{ width: 60px; padding: 11px; border: 1px solid #CCCCCC; cursor: pointer; margin-top: 5px; } </style>
html代码:
<div class="big_box"> <div class="big_box2"> <div class="box1"> <img class="img" src="img/mid1.jpg" /> </div> <div class="box2"> </div> </div> <div> <img class="smallimg" src="img/smal1.jpg"/> <img class="smallimg" src="img/smal2.jpg"/> <img class="smallimg" src="img/smal3.jpg"/> <img class="smallimg" src="img/smal4.jpg"/> </div> </div>
阅读全文
0 0
- JavaScript学习之简单的放大镜
- 一个简单的JavaScript放大镜
- javascript放大镜效果的简单实现
- Javascript放大镜的特效
- 简单的放大镜效果
- 一个简单的放大镜
- 学习的JS放大镜
- Javascript仿京东放大镜的效果
- android 放大镜的简单实现
- 一个简单的放大镜功能
- JavaScript学习之简单的计算器
- javascript 放大镜(学习至CSDN论坛)
- javascript放大镜
- JavaScript实现的放大镜放大图片效果
- Javascript实现图片的放大镜功能效果
- JavaScript实现的网页放大镜效果
- 简单的js实现放大镜效果
- javascript的简单学习
- 小程序与html5开发的差别(连载三)
- H5面试题---介绍js的基本数据类型
- 有趣的if语句
- 使用CXF框架开发一个简单的WebService
- 【博弈+SG函数+打表找规律】HDU_5795_A Simple Nim
- JavaScript学习之简单的放大镜
- Android中View的宽高测量结果为0的原因和解决方法
- 阵列,配额与LVM
- &&重载实现寻找子集
- 【《Real-Time Rendering 3rd》 提炼总结】(六) 第七章 · 高级着色:BRDF及相关技术
- 文件流FileOutputStream类
- H5---js有哪些内置对象
- 动手实现并开源IDEOnline——代码高亮【富文本编辑框】
- Spring Boot实战学习笔记5