这是一款js和CSS3 3D立方体图片画廊特效。该3D立方体图片画廊特效通过CSS3进行布局,构建立方体,然后通过简单的js代码来完成点击缩略图进行立方体旋转的操作。
由于该该3D立方体图片画廊特效中使用了CSS变量和CSS grid,所以不是所以浏览器都支持该特效。
使用方法
在页面中引入样式文件style.css。
HTML结构
该3D立方体图片画廊特效的HTML结构如下:

Javascript
然后在页面加载完毕之后,通过下面的js代码来完成点击缩略图旋转立方体的功能。
window.addEventListener("DOMContentLoaded", function () {
var cube = document.querySelector(".cube"),
imageButtons = document.querySelector(".image-buttons");
var cubeImageClass = cube.classList[1];
//Add click event listener to image buttons container
imageButtons.addEventListener("click", function (e) {
//Get node type and class value of clicked element
var targetNode = e.target.nodeName,
targetClass = e.target.className;
//Check if image input has been clicked and isn't the currently shown image
if (targetNode === "INPUT" && targetClass !== cubeImageClass) {
console.log("Show Image: " + targetClass.charAt(11));
//Replace previous cube image class with new class
cube.classList.remove(cubeImageClass);
cube.classList.add(targetClass);
//Update cube image class variable with new class
cubeImageClass = targetClass;
}
});
});
该3D立方体图片画廊特效的codepen地址为:https://codepen.io/GeorgePark/pen/gegavO









