使用Javascript来创建一个响应式的超酷360度全景图片查看幻灯效果
360度的全景图片效果常常可以用到给客户做产品展示,今天这里我们推荐一个非常不错的来自Robert Pataki的360全景幻灯实现教程,这里教程中将使用javascript来打造一个超酷的全景幻灯实现,相信大家一定会喜欢的!
在这个教程中没有使用到任何插件,我们将使用HTML,css和javascript来实现,当然,也使用是jQuery这个框架!
如何实现?
我们将使用预先按照360生成的图片进行轮播来实现动画展示效果。包含了180个图片。所以加载时间可能比较长。
代码实现
我们将在css代码中添加media queries,来使得这个效果可以同时在ipad和iphone上实现。
1. 代码文件
我们添加js,css,图片目录。css目录中包含了reset.css。js中包含了jQuery。代码文件如下:
2. 新的项目
创建一个HTML文件index.html。在<head>中我们设置了移动设备的viewport,使得内容不支持缩放。添加俩个文件
reset.css和threesixty.css。包含了自定义的css样式。
- <!DOCTYPE html>
- <htmllang="en">
- <head>
- <metacharset="utf-8">
- <metaname="viewport"content="initial-scale=1.0, maximum-scale=1.0"/>
- <title>360</title>
- <linkrel="stylesheet"href="css/reset.css"media="screen"type="text/css"/>
- <linkrel="stylesheet"href="css/threesixty.css"media="screen"type="text/css"/>
- </head>
- <body>
- </body>
- </html>
3. 加载进度条
创建一个<div>来容纳幻灯。其中包含一个<ol>,用来包含图片序列<li>,同时也包含了一个<span>来显示进度条。我们将使用javascript来动态加载图片。
- <!DOCTYPE html>
- <htmllang="en">
- <head>
- <metacharset="utf-8">
- <metaname="viewport"content="initial-scale=1.0, maximum-scale=1.0"/>
- <title>360</title>
- <linkrel="stylesheet"href="css/reset.css"media="screen"type="text/css"/>
- <linkrel="stylesheet"href="css/threesixty.css"media="screen"type="text/css"/>
- </head>
- <body>
- <divid="threesixty">
- <divid="spinner">
- <span>0%</span>
- </div>
- <olid="threesixty_images"></ol>
- </div>
- </body>
- </html>
4. 添加互动
代码最后,我们添加jQuery用来处理互动,threesixity.js用来处理图片幻灯。
- <!DOCTYPE html>
- <htmllang="en">
- <head>
- <metacharset="utf-8">
- <metaname="viewport"content="initial-scale=1.0, maximum-scale=1.0"/>
- <title>360</title>
- <linkrel="stylesheet"href="css/reset.css"media="screen"type="text/css"/>
- <linkrel="stylesheet"href="css/threesixty.css"media="screen"type="text/css"/>
- </head>
- <body>
- <divid="threesixty">
- <divid="spinner">
- <span>0%</span>
- </div>
- <olid="threesixty_images"></ol>
- </div>
- <scriptsrc="js/heartcode-canvasloader-min.js"></script>
- <scriptsrc="js/jquery-1.7.min.js"></script>
- <scriptsrc="js/threesixty.js"></script>
- </body>
- </html>
5. 样式
我们添加threesixty.css文件。reset.css用来设置缺省的样式。首先定义#threesixty包装。缺省的图片幻灯是960x450。水平垂直居中。
- #threesixty {
- position:absolute;
- overflow:hidden;
- top:50%;
- left:50%;
- width:960px;
- height:540px;
- margin-left:-480px;
- margin-top:-270p