使用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
使用Javascript来创建一个响应式的超酷360度全景图片查看幻灯效果的更多相关文章
- 使用 ThreeSixty 创建可拖动的 360 度全景图片预览效果
ThreeSixty 是生成可拖动的360度预览图像序列的 jQuery 插件.只需要在你的 HTML 页面包引入最新的 jQuery 和 threesixty.js 文件就可以使用了,支持键盘上的箭 ...
- 使用media Queries实现一个响应式的菜单
Media queries是CSS3引入的一个特性,使用它可以方便的实现各种响应式效果.在这个示例中我们将会使用media queries实现一个响应式的菜单.这个菜单会根据当前浏览器屏幕的大小变化而 ...
- 使用jQuery开发一个响应式超酷整合RSS信息阅读杂志
在线演示1 本地下载 申请达人,去除赞助商链接 如果大家喜欢阅读博客文章的话,可能都会使用RSS阅读器,今天这里我们将使用jQuery来开发一个响应式的RSS信息阅读应用,使用它你可以将你喜欢 ...
- AudioPlayer.js,一个响应式且支持触摸操作的jquery音频插件
AudioPlayer.js是一个响应式.支持触摸操作的HTML5 的音乐播放器.本文是对其官网的说用说明文档得翻译,博主第一次翻译外文.不到之处还请谅解.之处. JS文件地址:http://osva ...
- 一个响应式框架——agera
Google在上周开源了一个响应式框架——agera,相信它会慢慢地被广大程序员所熟知.我个人对这样的技术是很感兴趣的,在这之前也研究过RxJava,所以在得知Google开源了这样的框架之后第一时间 ...
- 一个响应式数据库框架SQLBrite,完美解决数据库和UI的同步更新!
相信小伙伴们在开发中或多或少都可能遇到过这样的问题:打开一个应用后,为了快速响应,先将数据库中的数据呈现给用户,然后再去网络上请求数据,请求成功之后将数据缓存至数据库,同时更新UI,但是我们经常会这样 ...
- media Queries实现一个响应式的菜单
使用media Queries实现一个响应式的菜单 Media queries是CSS3引入的一个特性,使用它可以方便的实现各种响应式效果.在这个示例中我们将会使用media queries实现一 ...
- pc端的企业网站(IT修真院test9)详解一个响应式完成的pc端项目
一:引入bootstrap框架 昨天一直被bootstrap栅格系统折磨. why? 我本来想一边码字,一边学习栅格布局的.but不成功.这时我头脑已经昏了. 下午,我查看了bootstrap的官网, ...
- 用 CSS Grid 布局制作一个响应式柱状图
最新一段时间比较喜欢玩弄图表,出于好奇,我想找出比较好的用 CSS 制作图表的方案.开始学习网上开源图表库,它对我学习新的和不熟悉的前端技术很有帮助,比如这个:CSS Grid. 今天和大家分享我学到 ...
随机推荐
- [WinAPI] API 6 [操作驱动器挂载点]
驱动器挂载点,又可以称作卷挂载点.挂载点实际上是操作系统或者用户设置的,用来进入一个逻辑驱动器或者卷的入口.在设置了卷的挂载点后,用户或者应用程序可以使用卷标或者指定的挂载点来进入卷.比如在“C:\” ...
- [Python爬虫] Selenium获取百度百科旅游景点的InfoBox消息盒
前面我讲述过如何通过BeautifulSoup获取维基百科的消息盒,同样可以通过Spider获取网站内容,最近学习了Selenium+Phantomjs后,准备利用它们获取百度百科的旅游景点消息盒(I ...
- Why we need template on Django ?
Let's create a simple website by django ... step01: django-admin startproject x01 step02: cd x01 ls ...
- Atitit.实现继承的原理and方法java javascript .net c# php ...
Atitit.实现继承的原理and方法java javascript .net c# php ... 1. 实现继承的问题 1 2. 如何拷贝基类方法?采用prototype原型方式,通过冒充对象 1 ...
- atitit。自定义uml MOF EMF体系eclipse emf 教程o7t
atitit.自定义uml MOF EMF体系eclipse emf 教程o7t 1. 元对象机制(MOF,Meta-Object Facility)and 结构 1 2. 元模型图.模型图.对象 ...
- jQuery的简单入门练习
<html> <head> <meta charset="utf-8"> <title>jQuery的练习</title> ...
- JAVA学习Swing绝对局部简单学习
package com.swing; import java.awt.Container; import javax.swing.JButton; import javax.swing.JFrame; ...
- python中x的平方
x ** 2 sqdEvens = [x ** 2 for x in range(8) if not x % 2] for i in sqdEvens: print(i) 0 4 16 36 > ...
- 使用Jsoup 爬取网易首页所有的图片
package com.enation.newtest; import java.io.File; import java.io.FileNotFoundException; import java. ...
- mac系统安装php redis扩展
安装步骤如下: 1.下载redis扩展 下载地址:https://nodeload.github.com/nicolasff/phpredis/zip/master 2.下载下来是zip包 手动解压 ...