javascript如何实现360度全景照片问题汇总


Posted in Javascript onApril 04, 2016

本文为大家分享了做360度的全景照片的详细步骤,其中要注意以下几个问题:

1、如何在拖图片时,使其加载变快?---注意让图片隐藏的性能比让图片切换的性能高,且在IE9下运行,会出现图片加载的问题
2、如何使图片带有一定的速度转
3、考虑如果x为负数和负数两种情况

代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link rel="stylesheet" type="text/css" href="style.css" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script>
window.onload=function ()
{
  var oImg=document.getElementById('img1');//第一张图片
  var aImg=document.getElementsByTagName('img');
  var lastimage=oImg;
  var x=0;//鼠标拖动某一个点,用该点的位置,来改变src
  var speed=0;
  var lastx=0;
  var timer=null;
  var temp=0;
  for(i=0;i<77;i++)
  {
    var oNewImage=document.createElement('img');
    oNewImage.src='img/miaov ('+i+').jpg'; 
    oNewImage.style.display='none';
    document.body.appendChild(oNewImage);//先将77张图片隐藏
  }
  document.onmousedown=function(ev)
  {
    clearInterval(timer);
    var oEvent=ev||event;
    var disx=oEvent.clientX-x;
    document.onmousemove=function(ev)
    {
       var oEvent=ev||event;
       x=oEvent.clientX-disx;
       setMove(); 
       speed=x-lastx;//记录前后两个速度
       lastx=x;
      return false;
    }
    document.onmouseup=function()
    {
       document.onmousemove=null;
       document.onmouseup=null;
       timer=setInterval(function(){
        x+=speed;
        setMove();
         document.title=speed;
       },30);

    }
    function setMove()
    {
       if(speed>0){speed--;}
       else if(speed==0){clearInterval(timer);}
       else {speed++;}
       temp=-x;//temp要设为全局变量
       if(temp>0)
       {
        temp=-x%77;
       }
       else
       {
        temp=-x+(-Math.floor(-x/77)*77);
       }
       //oImg.src='img/miaov ('+temp+').jpg'; //这里外面要用单引号 
       //alert(aImg.length);
       lastimage.style.display='none';//先让最后一张变为none(刚开始也为第一张,鼠标没有移动时,第一张图片是显示的)
       aImg[temp].style.display='block';//当打开页面时,出现的默认为第一张图片
       lastimage=aImg[temp];
     
       document.title=temp;
    }
    return false;
  }  
}
</script>
</head>
<body>
<img id="img1" src="img/miaov (0).jpg" />
<!--<div id="bg"></div>
<div id="prog">
  360度全景展示 载入中......<span>0%</span>
  <div id="bar"></div>
</div>-->
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助。

Javascript 相关文章推荐
javascript之函数直接量(function(){})()
Jun 29 Javascript
js css后面所带参数含义介绍
Aug 18 Javascript
JavaScript关闭当前页面(窗口)不带任何提示
Mar 26 Javascript
jQuery实现自动与手动切换的滚动新闻特效代码分享
Aug 27 Javascript
Bootstrap每天必学之级联下拉菜单
Mar 27 Javascript
Treegrid的动态加载实例代码
Apr 29 Javascript
JavaScript计算值然后把值嵌入到html中的实现方法
Oct 29 Javascript
BootStrap 图标icon符号图标glyphicons不正常显示的快速解决办法
Dec 08 Javascript
深入理解Angularjs向指令传递数据双向绑定机制
Dec 31 Javascript
微信小程序Getuserinfo解决方案图解
Aug 24 Javascript
最简单的vue消息提示全局组件的方法
Jun 16 Javascript
Vue-CLI 项目在pycharm中配置方法
Aug 30 Javascript
javascript制作照片墙及制作过程中出现的问题
Apr 04 #Javascript
javascript拖拽效果延伸学习
Apr 04 #Javascript
javascript事件委托的用法及其好处简析
Apr 04 #Javascript
基于javascript制作微博发布栏效果
Apr 04 #Javascript
纯js实现手风琴效果
Apr 17 #Javascript
AngularJS中的$watch(),$digest()和$apply()区分
Apr 04 #Javascript
Angular 根据 service 的状态更新 directive
Apr 03 #Javascript
You might like
php实现httpRequest的方法
2015/03/13 PHP
PHP实现的简单分页类及用法示例
2016/05/06 PHP
PHP Ajax实现无刷新附件上传
2016/08/17 PHP
PHP微信分享开发详解
2017/01/14 PHP
层序遍历在ExtJs的TreePanel中的应用
2009/10/16 Javascript
jQuery 性能优化手册 推荐
2010/02/23 Javascript
使用Jquery实现点击文字后变成文本框且可修改
2013/09/21 Javascript
javascript自定义的addClass()方法
2014/05/28 Javascript
javascript实现类似于新浪微博搜索框弹出效果的方法
2015/07/27 Javascript
基于JavaScript实现表单密码的隐藏和显示出来
2016/03/02 Javascript
jQuery ajax提交Form表单实例(附demo源码)
2016/04/06 Javascript
jQuery插件ImgAreaSelect实现头像上传预览和裁剪功能实例讲解一
2017/05/26 jQuery
基于JavaScript实现评论框展开和隐藏功能
2017/08/25 Javascript
浅谈Vuex的状态管理(全家桶)
2017/11/04 Javascript
Vue2.X 通过AJAX动态更新数据
2018/07/17 Javascript
解决Vue axios post请求,后台获取不到数据的问题方法
2018/08/11 Javascript
微信小程序如何调用新闻接口实现列表循环
2019/07/02 Javascript
jQuery实现图片下载代码
2019/07/18 jQuery
Python编写登陆接口的方法
2017/07/10 Python
Python获取指定文件夹下的文件名的方法
2018/02/06 Python
图解Python变量与赋值
2018/04/03 Python
python获取酷狗音乐top500的下载地址 MP3格式
2018/04/17 Python
用python写扫雷游戏实例代码分享
2018/05/27 Python
python元组的概念知识点
2019/11/19 Python
python日期与时间戳的各种转换示例
2020/02/12 Python
Python实现动态给类和对象添加属性和方法操作示例
2020/02/29 Python
在django项目中导出数据到excel文件并实现下载的功能
2020/03/13 Python
django中related_name的用法说明
2020/05/20 Python
html5 跨文档消息传输示例探讨
2013/04/01 HTML / CSS
YSL圣罗兰美妆官方旗舰店:购买YSL口红
2018/04/16 全球购物
说出一些常用的类,包,接口
2014/09/22 面试题
化学相关工作求职信
2013/10/02 职场文书
八项规定整改方案
2014/02/21 职场文书
2014年网管工作总结
2014/12/11 职场文书
学校世界艾滋病日宣传活动总结
2015/05/05 职场文书
2016应届毕业生就业指导课心得体会
2016/01/15 职场文书