jQueryで360°パノラマドラッグを実現

WBOY
リリース: 2016-05-16 16:08:32
オリジナル
1351 人が閲覧しました

CSS

复制代 代码如下:

html,body{background:#333;}
 #loading{左:0;上:0;幅:100%;高さ:100%;背景:#333;色:#fff;}
 #読み込みスパン{左:45%;上:40%;フォント:通常 50px Arial;カラー:#fff;}
 #demo{left:50%;top:50%;margin-left:-512px;margin-top:-384px;width:1024px;height:768px;}
 #demo img{ボーダー半径:8px;ボーダー:5px ソリッド #555;}
 .back{font-size:18px;line-height:130%;padding:8px 20px;color:#fff;}
 #back-home{左:0px;上:0px;背景:#35916D;}
 #back-article{right:0px;top:0px;background:#444;}
 #back-download{右:0px;下:0px;背景:#CE565D;}

HTML

复制代 代码如下:



js

复制代码代码如下:

<スクリプト src="scripts/jquery.js?1.11.1">
<スクリプト src="scripts/jquery.drag360.js">
<スクリプト>
$(関数(){
    $(document.body).attr({
      'onSelectStart' :'return false;',
      'oncontextmenu':'return false;',
      'onbeforecopy':'return false;',
      'oncopy':'return false;',
      'ondragstart':'return false;',
      'スタイル':'-moz-user-select:none; -khtml-user-select: なし;ユーザー選択: なし;'
    });
 var Preload=function(images,callback){
  var 完了=0,val=0;
  var count=画像の長さ; 
  var preload=function(url) {
   var image = $("").attr("src", url).on("load",function () {
    complete();
   });
   };
  var complete=function() {
   完了 ;
   val=完了/カウント*100;
   $('#loading steam').text(Math.ceil(val) "%");
   if(done==count){
    コールバック();
   }
  };
  for(var i=0;i    preload(images[i]);
  }
 };
 var image=[
   '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',
 ];
 プリロード(画像,関数(){
  $("#loading").fadeOut();
  $("#demo img").attr("src",images[0]);
  $("#demo").fadeIn();
  $("#demo img").drag360(images);
 });

});

drag.js

コードをコピー コードは次のとおりです:

(関数($){
    $.fn.drag360=関数(画像){
        var mdx,mmx,isDrag=false,unitStep=40,current=0;
        var that=$(this);
        var length=images.length;
        // 触摸
        that.on('タッチスタート',function(e){
            var touch = e.originalEvent;
                mdx = touch.changedTouches[0].pageX;
                isDrag=true;
        }).on('タッチムーブ',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){
                        現在=現在1;
                    }その他{
                        現在=現在-1;
                    }
                    mdx=mmx;
                    if(current                     if(現在>長さ-1)現在=0;
                    that.attr("src",images[current]);
                }
            }
        }).on('タッチエンド',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                     if(現在>長さ-1)現在=0;
                    that.attr("src",images[current]);
                }
            }
            false を返します;
        })
$(document).on('mouseup',function(e){
isDrag=false;
});
$(document).on('mouseleave',function(e){
isDrag=false;
});
これを返します;
};
})(jQuery);

以上がこの記事の全内容です。皆さんに気に入っていただければ幸いです。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!