jQuery 360度看图片效果是一种通过JavaScript和CSS技术实现的交互式图片展示方式。用户可以通过鼠标拖动或触摸屏幕来旋转和查看图片的各个角度,从而获得类似360度全景图的体验。
transform
属性实现图片的旋转和缩放。以下是一个简单的基于jQuery和CSS3的360度看图片效果的示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>360度看图片效果</title>
<style>
#image-container {
position: relative;
width: 500px;
height: 500px;
overflow: hidden;
}
#image-container img {
position: absolute;
width: 100%;
height: 100%;
transition: transform 0.1s ease-out;
}
</style>
</head>
<body>
<div id="image-container">
<img src="image-1.jpg" alt="Image 1">
<img src="image-2.jpg" alt="Image 2">
<img src="image-3.jpg" alt="Image 3">
<!-- 添加更多图片 -->
</div>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
$(document).ready(function() {
let images = $('#image-container img');
let angle = 0;
images.each(function(index) {
let offset = index * (360 / images.length);
$(this).css('transform', `rotateY(${offset}deg) translateZ(250px)`);
});
$(document).on('mousemove', function(event) {
let mouseX = event.pageX;
let mouseY = event.pageY;
let container = $('#image-container');
let centerX = container.width() / 2;
let centerY = container.height() / 2;
let deltaX = (mouseX - centerX) / centerX;
let deltaY = (mouseY - centerY) / centerY;
angle = (deltaX * 180) - (deltaY * 90);
images.css('transform', `rotateY(${angle}deg) translateZ(250px)`);
});
});
</script>
</body>
</html>
通过以上方法,可以实现一个基本的360度看图片效果,并解决一些常见问题。
领取专属 10元无门槛券
手把手带您无忧上云