迹忆客 专注技术分享

当前位置:主页 > 学无止境 > WEB前端 > JavaScript >

使用 JavaScript 淡入图像

作者:迹忆客 最近更新:2024/03/16 浏览次数:

如果没有 JavaScript,可以使用 CSS 评估图像的淡入样式。但是这个过程并不可靠,因为我们无法动态处理它。

因此,JavaScript 使用方法 requestAnimationFrame() 而不是完全依赖 CSS 和 setTimeout() 方法的方式使路径更加快捷和迅速。在示例片段中,我们将看到一个代码实例,其中包括方法 requestAnimationFrame() 的实现以及可以在引用属性 className 的图像中淡入淡出的代码。


使用 className 属性淡入图像

我们将生成一个带有可行的 srcimg 标签。存在可点击事件以启动图像的淡入。这里的主要工作是使用 className 属性,该属性将引用某个 CSS 块并将其与 img id 实例对齐。

代码 - HTML 文件:

<img id="img" style="width: 200px" src="https://images.unsplash.com/photo-1653450283266-c788c2ca4ab2?ixlib=rb-1.2.1&raw_url=true&q=80&fm=jpg&crop=entropy&cs=tinysrgb&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=872" alt="Image 1">
<br><br>
<button type="button" onclick="myFunction()">Change</button>

代码 - CSS 文件:

img {
            opacity: 0;
            filter: alpha(opacity=40);
    }
.animation {
            -webkit-transition: 1s;
            -moz-transition: 1s;
            -o-transition: 1s;
            transition: 1s;
            opacity: 1;
        }

代码 - JavaScript 文件:

function myFunction() {
  document.getElementById('img').className = 'animation';
}

输出:


使用 requestAnimationFrame() 方法淡入图像

在这方面,我们将有一个函数 fadeIn,它将采用 img 标签的实例。稍后,fadeIn 函数将对 requestAnimationFrame()setTimeout() 进行操作,并根据当前浏览器详细信息定位时间范围。

代码 - HTML 文件:

<img id="what" src="https://images.unsplash.com/photo-1653372500616-ff0a2847f7ca?crop=entropy&cs=tinysrgb&fm=jpg&ixlib=rb-1.2.1&q=80&raw_url=true&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=774" draggable="true" ondragstart="drag(event)" width="200" height="150">
<br><br>
<button onclick="myFunction()">Change</button>

代码 - CSS 文件:

img {
    opacity: 0;
    filter: alpha(opacity=40);
}

代码 - JavaScript 文件:

function fadeIn(el) {
  el.style.opacity = 0;
  var tick = function() {
    el.style.opacity = +el.style.opacity + 0.05;
    if (+el.style.opacity < 1) {
      var x = (window.requestAnimationFrame && requestAnimationFrame(tick)) ||
          setTimeout(tick, 16)
    }
  };
  tick();
}

function myFunction() {
  var el = document.getElementById('what');
  console.log(el);
  fadeIn(el);
}

输出:

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 JavaScript 中使用 Onclick 重定向页面

发布时间:2024/03/16 浏览次数:78 分类:JavaScript

本教程将教你如何在用户单击 HTML 按钮时创建 JavaScript 重定向。我们将使用 onclick 函数来监听事件。如果用户单击该按钮,它将重定向到另一个页面。

JavaScript 布尔函数

发布时间:2023/09/09 浏览次数:104 分类:JavaScript

与大多数其他编程语言不同,JavaScript 拥有布尔类型作为原始数据类型。 布尔类型大多将 true 和 false 作为唯一的默认值。但在某些情况下,我们也将 0 表示为 false,将 1 表示为 true。

JavaScript boolean.valueOf() 方法

发布时间:2023/09/09 浏览次数:203 分类:JavaScript

在 JavaScript 中,boolean.valueOf() 方法允许我们获取布尔对象的原始值。 该方法主要在内部使用,而不是在代码内部使用。JavaScript boolean.valueOf() 方法的语法

JavaScript boolean.toString() 方法

发布时间:2023/09/09 浏览次数:198 分类:JavaScript

在 JavaScript 中,boolean.toString() 方法允许我们将布尔值转换为字符串后将其用作 HTML 文本。JavaScript boolean.toString() 方法的语法

JavaScript boolean.prototype 属性

发布时间:2023/09/09 浏览次数:126 分类:JavaScript

在 JavaScript 中,.prototype 属性适用于所有对象。 该方法允许我们向对象添加新属性。JavaScript boolean.prototype 属性的语法

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便