jQuery实现360°全景拖动展示_jquery

CSS

复制代码 代码如下:

html,body{background:#333;}
 #loading{left:0;top:0;width:100%;height:100%;background:#333;color:#fff;}
 #loading span{left:45%;top:40%;font:normal 50px Arial;color:#fff;}
 #demo{left:50%;top:50%;margin-left:-512px;margin-top:-384px;width:1024px;height:768px;}
 #demo img{border-radius:8px;border:5px solid #555;}
 .back{font-size:18px;line-height:130%;padding:8px 20px;color:#fff;}
 #back-home{left:0px;top:0px;background:#35916D;}
 #back-article{right:0px;top:0px;background:#444;}
 #back-download{right:0px;bottom:0px;background:#CE565D;}

HTML

复制代码 代码如下:

<div id="demo" class="px hide"><img /></div>
<div id="loading" class="px"><span class="pa"></span></div>

js

复制代码 代码如下:

<script src="scripts/jquery.js?1.11.1"></script>
<script src="scripts/jquery.drag360.js"></script>
<script>
$(function(){
    $(document.body).attr({
      'onSelectStart' :'return false;',
      'oncontextmenu':'return false;',
      'onbeforecopy':'return false;',
      'oncopy':'return false;',
      'ondragstart':'return false;',
      'style':'-moz-user-select:none; -khtml-user-select: none; user-select: none;'
    });
 var Preload=function(images,callback){
  var done=0,val=0;
  var count=images.length; 
  var preload=function(url) {
   var image = $("<img />").attr("src", url).on("load",function () {
    complete();
   });
   };
  var complete=function() {
   done++;
   val=done/count*100;
   $('#loading span').text(Math.ceil(val) + "%");
   if(done==count){
    callback();
   }
  };
  for(var i=0;i<images.length;i++){
   preload(images[i]);
  }
 };
 var images=[
   'drag/shiwai ceshi0006.jpg',
   'drag/shiwai ceshi0012.jpg',
   'drag/shiwai ceshi0018.jpg',
   'drag/shiwai ceshi0024.jpg',
   'drag/shiwai ceshi0030.jpg',
   'drag/shiwai ceshi0036.jpg',
   'drag/shiwai ceshi0042.jpg',
   'drag/shiwai ceshi0048.jpg',
   'drag/shiwai ceshi0054.jpg',
   'drag/shiwai ceshi0060.jpg',
   'drag/shiwai ceshi0066.jpg',
   'drag/shiwai ceshi0072.jpg',
   'drag/shiwai ceshi0078.jpg',
   'drag/shiwai ceshi0084.jpg',
   'drag/shiwai ceshi0090.jpg',
   'drag/shiwai ceshi0096.jpg',
   'drag/shiwai ceshi0102.jpg',
   'drag/shiwai ceshi0108.jpg',
   'drag/shiwai ceshi0114.jpg',
   'drag/shiwai ceshi0120.jpg',
   'drag/shiwai ceshi0126.jpg',
   'drag/shiwai ceshi0132.jpg',
   'drag/shiwai ceshi0138.jpg',
   'drag/shiwai ceshi0144.jpg',
   'drag/shiwai ceshi0150.jpg',
   'drag/shiwai ceshi0156.jpg',
   'drag/shiwai ceshi0162.jpg',
   'drag/shiwai ceshi0168.jpg',
   'drag/shiwai ceshi0174.jpg',
   'drag/shiwai ceshi0180.jpg',
   'drag/shiwai ceshi0186.jpg',
   'drag/shiwai ceshi0192.jpg',
   'drag/shiwai ceshi0198.jpg',
   'drag/shiwai ceshi0204.jpg',
   'drag/shiwai ceshi0210.jpg',
   'drag/shiwai ceshi0216.jpg',
   'drag/shiwai ceshi0222.jpg',
   'drag/shiwai ceshi0228.jpg',
   'drag/shiwai ceshi0234.jpg',
   'drag/shiwai ceshi0240.jpg',
   'drag/shiwai ceshi0246.jpg',
   'drag/shiwai ceshi0252.jpg',
   'drag/shiwai ceshi0258.jpg',
   'drag/shiwai ceshi0264.jpg',
   'drag/shiwai ceshi0270.jpg',
   'drag/shiwai ceshi0276.jpg',
   'drag/shiwai ceshi0282.jpg',
   'drag/shiwai ceshi0288.jpg',
   'drag/shiwai ceshi0294.jpg',
   'drag/shiwai ceshi0300.jpg',
   'drag/shiwai ceshi0306.jpg',
   'drag/shiwai ceshi0312.jpg',
   'drag/shiwai ceshi0318.jpg',
   'drag/shiwai ceshi0324.jpg',
   'drag/shiwai ceshi0330.jpg',
   'drag/shiwai ceshi0336.jpg',
   'drag/shiwai ceshi0342.jpg',
   'drag/shiwai ceshi0348.jpg',
   'drag/shiwai ceshi0354.jpg',
   'drag/shiwai ceshi0360.jpg',
 ];
 Preload(images,function(){
  $("#loading").fadeOut();
  $("#demo img").attr("src",images[0]);
  $("#demo").fadeIn();
  $("#demo img").drag360(images);
 });

});
</script>

drag.js

复制代码 代码如下:

(function($){
    $.fn.drag360=function(images){
        var mdx,mmx,isDrag=false,unitStep=40,current=0;
        var that=$(this);
        var length=images.length;
        //触摸 
        that.on('touchstart',function(e){
            var touch = e.originalEvent;
                mdx = touch.changedTouches[0].pageX;
                isDrag=true;
        }).on('touchmove',function(e){
            e.preventDefault();
            touch = e.originalEvent.touches[0]||e.originalEvent.changedTouches[0];
            mmx=touch.pageX;
            if(isDrag){
                if(Math.abs(mmx-mdx)>unitStep){
                    if(mmx-mdx>0){
                        current=current+1;
                    }else{
                        current=current-1;
                    }
                    mdx=mmx;
                    if(current<0)current=length-1;
                    if(current>length-1)current=0;
                    that.attr("src",images[current]);
                }
            }
        }).on('touchend',function(e){
            isDrag=false;
        });
        //拖动
        that.on('mousedown',function(e){
            mdx=e.pageX;
            isDrag=true;
        }).on('mousemove',function(e){
            mmx=e.pageX;
            if(isDrag){
                if(Math.abs(mmx-mdx)>unitStep){
                    current=current+(mmx-mdx>0?1:-1);
                    mdx=mmx;
                    if(current<0)current=length-1;
                    if(current>length-1)current=0;
                    that.attr("src",images[current]);
                }
            }
            return false;
        })
        $(document).on('mouseup',function(e){
            isDrag=false;
        });
        $(document).on('mouseleave',function(e){
            isDrag=false;
        });
        return this;
    };
})(jQuery);

以上所述就是本文的全部内容了,希望大家能够喜欢。

时间: 2024-09-06 20:55:15

jQuery实现360°全景拖动展示_jquery的相关文章

jQuery实现360°全景拖动展示

 360全景就是视角超过人的正常视角的图像,而我们这里说的全景特指水平视角360度,垂直视角180度的图像.可以全景空间里进行切换,达到浏览各个不同场景360全景展示的目的.     CSS   代码如下: html,body{background:#333;} #loading{left:0;top:0;width:100%;height:100%;background:#333;color:#fff;} #loading span{left:45%;top:40%;font:normal 5

jquery图片相册可拖动展示效果

<!doctype html public "-//w3c//dtd html 4.01//en" "http://www.w3.org/tr/html4/strict.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html;charset=iso-8859-1"/> <title>

jQuery实现的产品自动360度旋转展示特效源码分享_jquery

这是一款基于jQuery实现的产品自动360度旋转展示特效代码,可以对产品进行360度旋转展示,更好的让顾客了解产品的全部外观细节. jQuery产品360度旋转展示代码,支持预加载,能够快速全面的的预览产品的图片,主要原理是利用多张图片按顺序播放实现,本段代码兼容目前最新的各类主流浏览器,是一款非常优秀的特效源码. 运行效果图:---------------------------------效果查看 源码下载----------------------------------- 为大家分享的

jQuery仿360导航页图标拖动排序效果代码分享_jquery

jquery实现360浏览器导航页图标拖动从新排序特效源码是一款模仿360浏览器导航页网站图标拖动排序的代码.本段代码适应于所有网页使用,有兴趣的朋友们可以学习一下. 运行效果图:                                         ----------------------查看效果 下载源码-----------------------   小提示:浏览器中如果不能正常运行,可以尝试切换浏览模式. 为大家分享的360导航页图标拖动排序效果代码如下 <!DOCTYP

13 款最热门的 jQuery 图像 360 度旋转插件推荐_jquery

在 web 页面上使用 jQuery 图像 360 度旋转插件是最美也是最方便的显示图像的方式.这些超级棒的 360° 图像选择插件允许用户更详细的分析产品或者文章.jQuery 图像旋转插件可以让用户从各种角度进行 360 度的图像展示,经常在电子商务网站上使用,帮助消费者更好的了解产品,从任意的一个角度观察欣赏. 在这篇文章中,我们收集了 13 款最佳的 jQuery 图像 360 度旋转插件,这些插件都能进行 360 度图像旋转展示.希望大家能从中找到自己喜欢的,并应用在自己的网站上. 1

轻松学习jQuery插件EasyUI EasyUI实现拖动基本操作_jquery

本教程向您展示如何使 HTML 元素可拖动,在本例中,我们将创建三个 DIV 元素然后启用他们的拖动和放置. 首先,我们创建三个<div> 元素: <div id="dd1" class="dd-demo"></div> <div id="dd2" class="dd-demo"></div> <div id="dd3" class=&quo

使用JQuery FancyBox插件实现图片展示特效_jquery

FancyBox是一个用于显示图像,HTML内容和多媒体的lightbox工具. jquery插件之fancybox弹出框特效,与广为人之的lightbox插件比较类拟,可以展示单张图片,也可展示一组图片,它还可以展示自定义的内容与ajax载入外部文件的内容等,功能也是很方便与实用的. Demo effect(image gallery): Sample code: <link href="~/Content/jquery.fancybox.css" rel="styl

360度全景产品展示技术的推出

千龙网讯 终结单一的静态产品图时代,近日亚马逊中国在国内电子商务平台首推360度全景产品展示技术.消费者可在选购商品时通过360度全景视频观看所购产品的外形.颜色.材质等,全角度获悉产品细节.目前360度全景产品展示技术已经应用于亚马逊中国的珠宝首饰和钟表品类的百余款商品中,未来还将大规模推广到其他品类.该技术全面升级了消费者的购物体验,真正达到了所见即所购,开辟了中国电子商务网站以视频展示产品的先河. 目前国内网购商品展示以若干图片来实现,用户需要逐个点击静态图片,获得有限的观看角度.亚马逊中

jQuery模拟360浏览器切屏效果幻灯片(附demo源码下载)_jquery

本文实例讲述了jQuery模拟360浏览器切屏效果幻灯片,分享给大家供大家参考,具体如下: 运行效果截图如下: 点击此处查看在线演示效果. 具体代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://w