你的位置:首页 > Java教程

[Java教程]使用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。代码文件如下:

360度全景图片查看幻灯效果

2.  新的项目

创建一个HTML文件index.html。在<head>中我们设置了移动设备的viewport,使得内容不支持缩放。添加俩个文件

reset.css和threesixty.css。包含了自定义的css样式。

  1. <!DOCTYPE html>
  2. <htmllang="en">
  3. <head>
  4. <metacharset="utf-8">
  5. <metaname="viewport"content="initial-scale=1.0, maximum-scale=1.0"/>
  6. <title>360</title>
  7. <linkrel="stylesheet"href="css/reset.css"media="screen"type="text/css"/>
  8. <linkrel="stylesheet"href="css/threesixty.css"media="screen"type="text/css"/>
  9. </head>
  10. <body>
  11. </body>
  12. </html>


 

3. 加载进度条

创建一个<div>来容纳幻灯。其中包含一个<ol>,用来包含图片序列<li>,同时也包含了一个<span>来显示进度条。我们将使用javascript来动态加载图片。

  1. <!DOCTYPE html>
  2. <htmllang="en">
  3. <head>
  4. <metacharset="utf-8">
  5. <metaname="viewport"content="initial-scale=1.0, maximum-scale=1.0"/>
  6. <title>360</title>
  7. <linkrel="stylesheet"href="css/reset.css"media="screen"type="text/css"/>
  8. <linkrel="stylesheet"href="css/threesixty.css"media="screen"type="text/css"/>
  9. </head>
  10. <body>
  11. <divid="threesixty">
  12. <divid="spinner">
  13. <span>0%</span>
  14. </div>
  15. <olid="threesixty_images"></ol>
  16. </div>
  17. </body>
  18. </html>

 

 

4. 添加互动

代码最后,我们添加jQuery用来处理互动,threesixity.js用来处理图片幻灯。

  1. <!DOCTYPE html>
  2. <htmllang="en">
  3. <head>
  4. <metacharset="utf-8">
  5. <metaname="viewport"content="initial-scale=1.0, maximum-scale=1.0"/>
  6. <title>360</title>
  7. <linkrel="stylesheet"href="css/reset.css"media="screen"type="text/css"/>
  8. <linkrel="stylesheet"href="css/threesixty.css"media="screen"type="text/css"/>
  9. </head>
  10. <body>
  11. <divid="threesixty">
  12. <divid="spinner">
  13. <span>0%</span>
  14. </div>
  15. <olid="threesixty_images"></ol>
  16. </div>
  17. <scriptsrc="js/heartcode-canvasloader-min.js"></script>
  18. <scriptsrc="js/jquery-1.7.min.js"></script>
  19. <scriptsrc="js/threesixty.js"></script>
  20. </body>
  21. </html>


 

5. 样式

我们添加threesixty.css文件。reset.css用来设置缺省的样式。首先定义#threesixty包装。缺省的图片幻灯是960x450。水平垂直居中。

  1. #threesixty {
  2. position:absolute;
  3. overflow:hidden;
  4. top:50%;
  5. left:50%;
  6. width:960px;
  7. height:540px;
  8. margin-left:-480px;
  9. margin-top:-270p