JS点击img图片放大再次点击缩小JS实现 简单实用Ctrl+C+V就可以用

摘要:
1functionaddExpand(){2varimgs=document.getElementsByTagName(“img”);3imgs[0].focus();4for(vari=0;i++){5imgs[i].onclick=expandPhoto;1functionexpandPhoto(){2varoverlay=document.createElement(“div”);

业务需要,从后台获取的图片列表,用img标签展示,用户需要查看大图。记录下来以便学习和参考.示例图如下:

放大之前:

JS点击img图片放大再次点击缩小JS实现 简单实用Ctrl+C+V就可以用第1张

放大之后:

JS点击img图片放大再次点击缩小JS实现 简单实用Ctrl+C+V就可以用第2张

点击后放大(由于图片高度超出了页面,需要通过overflow:auto;设置滚动条,点击放大图片回到列表界面)

附代码(js实现):

1、获取所有img标签,添加展开功能,该方法在图片列表加载完成以后执行:

1             function addExpand() {
2                 var imgs = document.getElementsByTagName("img");
3                 imgs[0].focus();
4                 for(var i = 0;i<imgs.length;i++){
5                     imgs[i].onclick = expandPhoto;
6                     imgs[i].onkeydown = expandPhoto;
7                 }
8             }

2、方法1种循环给图片的onclick和onckeydown指定了expandPhoto方法,该方法实现了点击图片放大的功能:

 1             function expandPhoto(){
 2                 var overlay = document.createElement("div");
 3                 overlay.setAttribute("id","overlay");
 4                 overlay.setAttribute("class","overlay");
 5                 document.body.appendChild(overlay);
 6  
 7                 var img = document.createElement("img");
 8                 img.setAttribute("id","expand")
 9                 img.setAttribute("class","overlayimg");
10                 img.src = this.getAttribute("src");
11                 document.getElementById("overlay").appendChild(img);
12  
13                 img.onclick = restore;
14             }

3、(style样式)方法2中,expndPhoto创建了一个id="overlay",class="overlay"的div,再给div创建了一个id="expand",class="overlayimg"的img标签,overlay和overlayimg类选择器定义如下:

 <style>
          .overlay{
               background-color:#000; //背景色
               opacity: 1.0; //不透明度
               filter:alpha(opacity=100); //透明度
               position: fixed;
               top:0;
               left:0;
               100%;
               height:100%;
               z-index: 10;
               overflow:auto; //滚动条
           }
           .overlayimg{
               position: absolute;
               z-index: 11;
               99%; //宽度
               height:auto; //高度自动
           }
</style>

4、方法2中,给创建的img标签的onclick指定了restore方法,该方法实现了点击大图回到图片列表的功能,定义如下:

1             function restore(){
2                 document.body.removeChild(document.getElementById("overlay"));
3                 document.body.removeChild(document.getElementById("expand"));
4             }

5、复制粘贴即可

原文链接:https://blog.csdn.net/weixin_33890526/article/details/94694759

免责声明:文章转载自《JS点击img图片放大再次点击缩小JS实现 简单实用Ctrl+C+V就可以用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇delphi登录用友的信息嵌入式 Linux下修改MAC地址下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

用js动态的改变img标签里面的src属性实现图片的循环切换

JS:根据循环切换的条件可以用 document.getElementById('').src='http://t.zoukankan.com/agansj-p-5906645.html'设置, 或者jquery方法: $('#id').attr('src','图片名称’); 具体: if(true) {  document.getElementById(...

bootstrap删除模态框弹出并询问是否删除【通用删除模态框】

普通的询问是否删除的对话框比较low,可以利用bootstrap的模态框代替普通的对话框来实现删除。 效果:   点删除的时候弹出模态框询问是否删除,点确认的时候将需要删除的ID传到后台进行删除。  过程: 1.界面准备删除模态框:   模态框中隐藏需要删除的ID <!-- 模态框 信...

史上最全的Spring Boot配置文件详解

Spring Boot在工作中是用到的越来越广泛了,简单方便,有了它,效率提高不知道多少倍。Spring Boot配置文件对Spring Boot来说就是入门和基础,经常会用到,所以写下做个总结以便日后查看。 1.配置文件 当我们构建完Spring Boot项目后,会在resources目录下给我们一个默认的全局配置文件 application.prope...

SpringBoot入门之内嵌Tomcat配置

  spring boot默认web程序启用tomcat内嵌容器tomcat,监听8080端口,servletPath默认为 / 。需要用到的就是端口、上下文路径的修改,在spring boot中其修改方法极其简单,实例如下: server.port=8088 server.context-path=/test 启动程序,日志如下: 2018-03-08...

zookeeper的开机自启动

zookeeper开机自启动vim /etc/rc.local export JAVA_HOME=/usr/local/jdk #必须加,否则后面的java服务起不来/usr/local/zookeeper/bin/zkServer.sh start root外用户启动: export JAVA_HOME=/usr/local/jdk su -user -...

ODBC 连接 Oracle 11g 详细步骤

  Oracle 11g 客户端连接1 安装对应的程序,完全安装(要安装和Oracle对应的版本,要不然ODBC进程会出现奇怪的问题,在部署环境中也是一样)2 在开始菜单中找到安装的Oracle 文件夹,之后在配置和移植工具->Net Configuration Assistant->本地网络名配置->添加配置文件示例:Data Sou...