首页 > 编程语言 >JavaScript实现缩略图到全宽图像页的平滑过渡

JavaScript实现缩略图到全宽图像页的平滑过渡

时间:2023-09-16 23:05:01浏览次数:44  
标签:opacity 缩略图 全宽 JavaScript 过渡 expandedImage

要实现缩略图到全宽图像页的平滑过渡效果,您可以使用JavaScript和CSS过渡效果来实现。下面是一个简单的示例:

HTML:

<div class="thumbnail" onclick="expandImage(this)">
   <img src="thumbnail_image.jpg" alt="Thumbnail Image">
</div>

<div id="expandedImage" style="display: none;">
   <img src="full_width_image.jpg" alt="Full Width Image">
</div>

CSS:

.thumbnail {
   width: 200px; /* 缩略图宽度 */
   height: 200px; /* 缩略图高度 */
   overflow: hidden;
   transition: all 0.5s; /* 过渡效果,可根据需要调整时间 */
}

.thumbnail img {
   width: 100%;
   height: auto;
}

#expandedImage {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   background-color: rgba(0, 0, 0, 0.8); /* 全宽图像页的背景颜色 */
   display: flex;
   align-items: center;
   justify-content: center;
   transition: opacity 0.5s; /* 过渡效果,可根据需要调整时间 */
}

#expandedImage img {
   max-width: 100%;
   max-height: 100%;
   opacity: 0;
   transition: opacity 0.5s; /* 过渡效果,可根据需要调整时间 */
}

JavaScript:

function expandImage(thumbnail) {
   thumbnail.style.transform = "scale(1.2)"; // 缩略图放大效果,可根据需要调整比例

   var expandedImage = document.getElementById("expandedImage");
   expandedImage.style.display = "flex";

   setTimeout(function() {
      expandedImage.style.opacity = "1";
      expandedImage.getElementsByTagName("img")[0].style.opacity = "1";
   }, 10);
}

这段代码使用了CSS的transition属性和JavaScript的scaleopacity属性来实现缩略图的平滑过渡效果。当点击缩略图时,缩略图会放大并淡入全宽图像页,同时背景色也会变暗。可以根据需要根据代码来调整过渡效果的细节。

标签:opacity,缩略图,全宽,JavaScript,过渡,expandedImage
From: https://blog.51cto.com/M82A1/7496818

相关文章

  • 如何从 javascript 中的 Web api 将 json 对象传递到项目的其余部分
    在将从WebAPI获取的JSON数据传递到项目的其他部分之前,您需要确保在完成fetch请求并获得响应后再进行处理。因为fetch是一个异步操作,需要等待服务器响应的完成才能获取到数据。在您的代码示例中,您可以将json数据传递给其他函数或组件进行后续处理。以下是一种可能的处理方式:fetch(B......
  • 缩略图upload
    <el-uploadaction="https://jsonplaceholder.typicode.com/posts/"list-type="picture-card":on-preview="handlePictureCardPreview":on-remove="handleRemove"><iclass="el-icon-plus"><......
  • 无涯教程-JavaScript - ATANH函数
    描述ATANH函数返回数字的反双曲正切值。反双曲正切值是其双曲正切值为number的值,因此ATANH(TANH(number))等于number。语法ATANH(number)争论Argument描述Required/OptionalNumberAnyrealnumberbetween(butnotequalto)1and-1.RequiredNotes如果指定的......
  • JavaScript 中的 `this` 指向问题与其在加密中的应用
    JS中的this关键字是一个非常重要的概念,它在不同情况下会指向不同的对象或值。在本文中,我们将深入探讨JavaScript中this的各种情况,并思考如何将其应用于JS加密中的一些有趣用途。1.全局上下文中的this在全局上下文中,this指向全局对象,通常是浏览器环境中的window对象。这......
  • 无涯教程-JavaScript - ASIN函数
    描述ASIN函数返回给定数字的反正弦或反正弦,并返回以弧度表示的Angular,介于-π/2和π/2之间。语法ASIN(number)争论Argument描述Required/OptionalNumberThesineoftheangleyouwantandmustbefrom-1to1.RequiredNotes如果您希望ASIN函数返回的Angula......
  • 无涯教程-JavaScript - ACOSH函数
    描述ACOSH函数返回数字的反双曲余弦值。反双曲余弦是其双曲余弦为数字的值。即ACOSH(COSH(数字))=数字语法ACOSH(number)争论Argument描述Required/OptionalNumberAnyrealnumberequaltoorgreaterthan1.Required适用性Excel2007,Excel2010,Excel2013,E......
  • 无涯教程-JavaScript - ABS函数
    描述数字除以除数后,ABS函数将返回余数。输出与除数的符号相同。语法MOD(number,divisor)争论Argument描述Required/OptionalNumberThenumberforwhichyouwanttofindtheremainder.RequiredDivisorThenumberbywhichyouwanttodividenumber.Requir......
  • 无涯教程-JavaScript - VLOOKUP函数
    描述当需要在表中或按行查找内容时,请使用VLOOKUP。组织数据,以便您查找的值在要查找的返回值的左侧。语法VLOOKUP(lookup_value,table_array,col_index_num,[range_lookup])争论Argument描述Required/Optionallookup_value您要查找的值。您要查找的值必须在ta......
  • JavaScript 代码整洁技巧
    前言为什么代码要整洁?代码质量与整洁度成正比。有的团队在赶工期的时候,不注重代码的整洁,代码写的越来越糟糕,项目越来越混乱,生产力也跟着下降,那就必须找更多人来提高生产力,开发成本越来越高。整洁的代码是怎样的?清晰表达意图、消除重复、简单抽象、能通过测试。换句话......
  • java jdk 里自带的 javascript引擎的使用
    main方法代码:importjavax.script.ScriptContext;importjavax.script.ScriptEngine;importjavax.script.ScriptEngineManager;importjavax.script.ScriptException;publicclassMain{publicstaticvoidmain(String[]args)throwsScriptException{......