JSで画像の引き戸効果を実現する方法は何ですか。
画像のスライド効果を実現するためには、JavaScriptとCSSを使用することができます。以下はその実装方法の一例です:
HTMLセクション:
<div class="container">
<div class="door">
<div class="front">
<img src="image.jpg" alt="Image">
</div>
<div class="back">
<img src="image.jpg" alt="Image">
</div>
</div>
</div>
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部分ではクリックイベントを監視してドアの状態を切り替えます。