117.info
人生若只如初见

JS怎么实现图片推拉门效果

可以使用JavaScript和CSS来实现图片推拉门效果。以下是一种实现方式:

HTML部分:

Image
Image

CSS部分:

.container {
  width: 400px;
  height: 300px;
  position: relative;
  margin: 0 auto;
  overflow: hidden;
}

.door {
  width: 50%;
  height: 100%;
  position: absolute;
  top: 0;
  transition: transform 0.5s;
}

.front {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.back {
  width: 100%;
  height: 100%;
  transform: translateX(-100%);
  overflow: hidden;
}

img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

JavaScript部分:

const door = document.querySelector('.door');
let isOpen = false;

door.addEventListener('click', function() {
  if (!isOpen) {
    door.style.transform = 'translateX(100%)';
    isOpen = true;
  } else {
    door.style.transform = 'translateX(0)';
    isOpen = false;
  }
});

以上代码实现了一个图片推拉门效果,点击图片可以打开或关闭门。CSS部分定义了门的样式和动画效果,JavaScript部分通过监听点击事件来切换门的状态。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe0d9AzsLAAdSAVM.html

推荐文章

  • js中math.random的用法是什么

    在JavaScript中,Math.random()是一个用于生成随机数的方法。它返回一个大于等于0且小于1的伪随机浮点数。
    使用方法如下:
    var randomNum = Math.rand...

  • js中json.stringify()深拷贝的缺点有哪些

    使用JSON.stringify()进行深拷贝有以下几个缺点: 无法处理循环引用:当对象中存在循环引用时,即对象的某个属性指向该对象本身,JSON.stringify()会抛出异常。 ...

  • js的offsetleft属性的用法

    JavaScript中的offsetLeft属性用于获取或设置一个元素相对于其包含元素的水平偏移量。
    使用offsetLeft属性获取元素的水平偏移量的语法如下:
    element....

  • Js CloneNode()用法

    CloneNode() 方法用于创建节点的副本。
    语法:
    node.cloneNode(deep)
    参数:
    deep:可选参数,指定是否深度克隆节点。如果设置为 true,则克...

  • 常用的Linux系统命令行有哪些

    常用的Linux系统命令行有很多,以下是一些常用的命令: cd:切换目录
    ls:列出目录内容
    pwd:显示当前工作目录的路径
    mkdir:创建目录
    rmdi...

  • TCP和UDP的区别是什么

    TCP(Transmission Control Protocol)和UDP(User Datagram Protocol)是在网络通信中常用的两个传输层协议,它们有以下几个主要的区别: 可靠性:TCP是一种可靠...

  • Activity生命周期是什么

    Activity生命周期指的是一个Activity从创建到销毁的整个过程。在Android应用中,每个Activity都有自己的生命周期,其中包括以下几个阶段: 创建阶段:当一个Acti...

  • mysql全文索引如何创建

    要在MySQL中创建全文索引,您需要执行以下步骤:确保您的MySQL版本支持全文索引。MySQL的全文索引功能在版本5.6.4及更高版本中可用。确保您的表使用的是支持全文...