如何用Js实现画廊相册效果
Admin 2021-08-24 群英技术资讯 634 次浏览
这篇文章给大家分享的是有关Js实现画廊效果的内容,小编觉得挺实用的,可以用来做图片展示,下文有两种实现效果及代码,感兴趣的朋友可以做个参考,接下来一起跟随小编看看吧。
原生Js实现画廊功能,点击图片,在下方出现相应放大图片。给a标签绑定onclick点击事件。这里上方的小图和下方将要展示大图,都是同一张图片,只是上下两个img的style中设置了不同的width和heigth。(如果不想设置width、height,另一种方法就是将a标签里src的图片存成大图,img展示的是小图。)通过Js点击事件结合css实现大图显示或隐藏,切换图片。具体如下图,代码附上
<html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <style> *{ margin: 0; padding: 0; } img{ width: 200px; height: 100px; } #showimg{ width: 500px; height: 240px; /* background-color: pink;*/ } .hide{ display: none; } .show{ display: block; } </style> </head> <body> <div id = "imagegallery"> <a href="../../imgs/1.jpg" rel="external nofollow" title="pic1"> <img src="../../imgs/1.jpg" alt="1"> </a> <a href="../../imgs/2.jpg" rel="external nofollow" title="pic2"> <img src="../../imgs/2.jpg" alt="2"> </a> <a href="../../imgs/3.jpg" rel="external nofollow" title="pic3"> <img src="../../imgs/3.jpg" alt="3"> </a> <a href="../../imgs/4.jpg" rel="external nofollow" title="pic4"> <img src="../../imgs/4.jpg" alt="4"> </a> </div> <!-- 清除浮动的 --> <div style="clear: both"></div> <!--利用空白的一个图占一个位置 --> <!-- <img id="image" src="" alt="" width="450px"> --> <img id="showimg" src="" class="hide" alt=""> <p id="desc"></p> <script> var imagegallery = document.getElementById("imagegallery"); var link = document.getElementsByTagName("a"); var showimg = document.getElementById("showimg"); var desc = document.getElementById("desc"); //for循环内部添加的绑定事件,在触发时,所有的批量添加的事件已经成功,触发事件时都是在循环结束之后 //批量绑定的事件的事件函数内部如果有变量i,要注意,函数执行时已经是在循环结束后 //循环内部定义的变量是一个全局变量,在循环后执行的i变量的值是i跳出循环时的值 image.src = links[i].href; // for(var i = 0;i < link.length;i++){ // link[i].onclick = function(){ // // alert("123"); // // 更改image内部的src属性值 // showimg.src = link[i].href; // // 更改desc内部文字描述 // return false;//取消a标签的默认跳转 // } // } for(var i = 0;i < link.length;i++){ link[i].onclick = function(){ // alert("123"); // 更改image内部的src属性值 showimg.src = this.href;//this. 关键字指代的是触发事件的真正事件源 //更改img显示 showimg.className = "show"; // 更改desc内部文字描述 desc.innerText = this.title; return false;//取消a标签的默认跳转 } } </script> </body> </html>
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>简易灯箱画廊设计</title> <style> *{ margin: 0; } #total{ width:100%; background-color: green; height:1000px; } #fpic{ margin-left: 15%; } .pic{ margin : 50px; width: 100px; height: 100px; } #show-bigger{ margin: auto; width: 600px; height: 450px; background-color: red; } </style> </head> <body > <div id="total"> <h3 style="color: white;text-align:center;">简易画廊设计</h3> <hr color="red"> <img class="pic" id="fpic"src="trees/t1.jpg" onclick="myfunction(this)" tabIndex=1 onblur="myfunction1(this)"> <img class="pic" src="trees/t2.jpg" onclick="myfunction(this)" tabIndex=1 onblur="myfunction1(this)"> <img class="pic" src="trees/t3.jpg" onclick="myfunction(this)" tabIndex=1 onblur="myfunction1(this)"> <img class="pic" src="trees/t4.jpg" onclick="myfunction(this)" tabIndex=1 onblur="myfunction1(this)"> <img class="pic" src="trees/t5.jpg" onclick="myfunction(this)" tabIndex=1 onblur="myfunction1(this)"> <img class="pic" src="trees/t6.jpg" onclick="myfunction(this)" tabIndex=1 onblur="myfunction1(this)"> <div id="show-bigger"><img id="spic" src="trees/t1.jpg" style="width: 100%;height: 100%"></div> </div> </body> <script type="text/javascript"> function myfunction(x){ //改变展示框的图片和被选中展示图片的边框 document.getElementById("spic").src=x.src; x.style.borderBottom="5px solid red"; } function myfunction1(x){ //消除未选择的边框属性 x.style.border="none"; } </script> </html>
以上就是关于原生Js实现画廊效果的介绍,上述代码仅供参考,希望能对大家有帮助。如果还想要了解更多js实现画廊效果的内容,大家可以关注其他相关文章。
文本转载自脚本之家
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
本文实例为大家分享了JavaScript实现鼠标拖拽调整div大小的具体代码,供大家参考,具体内容如下。鼠标拖拽调整div大小的功能,类似于我们查看街景地图时,对缩小地图的操作。那么我们用JavaScript如何实现这样的效果呢?
本篇文章给大家带来了关于javascript的相关知识,其中主要介绍了JavaScript的书写规则、变量的声明格式、变量的命名规则、及注意事项,变量的数据类型,数据类型的分类,空(null) 与 未定义(undefined)的用法,下面一起来看一下,希望对大家有帮助。
这篇文章主要为大家介绍了Vue3 中有场景是 reactive 能做而 ref 做不了的使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
本篇文章给大家带来了关于JavaScript的相关知识,其中主要整理了函数的定义与基本使用的相关问题,包括了用函数语句定义、函数的调用、未定义的实参等等内容,下面一起来看一下,希望对大家有帮助。
一、express4.x版本之前全局安装express命令是npminstallexpress-gexpress4.x版本之后全局安装express命令是npminstall-gexpress-generator1.创建Express 工程 express-emyproject2.npminstall-gsupervisor ,修改app.j
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008