基於jQuery的360圖片展示實現代碼

來源:互聯網
上載者:User

複製代碼 代碼如下:
$(function(){
var box_W = $(".PIC360").width();
var box_H = $(".PIC360").height();
var box_X = $(".PIC360").offset().left;
var box_Y = $(".PIC360").offset().top;
//求出中心點的橫座標值
var center_X = Math.ceil(box_X+(box_W/2));
//求出中心點的縱座標值
var center_Y = Math.ceil(box_X+(box_H/2));
var moveSetp = (box_W/2)/10//設定為10次移動,完成左邊的圖片顯示。這裡求出每次移動多少像素,算移動一次?;
$(".PIC360").mousemove(function(event){
var evX = event.pageX;
var evY = event.pageY;
//判斷是向左還是向左
if(center_X - evX>=0){
changePic(evX,evY,"left")
}else{
changePic(evX,evY)
}
function changePic(mX,mY,f){
if(f){
//求出滑鼠移動了多少次,每次對應一個LI的索引。
var index = Math.ceil(Math.abs((mX - center_X)/moveSetp));
$(".PIC360 li").eq(index).show().siblings().hide();
}else{
var index = Math.ceil(Math.abs((mX - center_X)/moveSetp));
var li_lengt = $(".PIC360 li").length;
$(".PIC360 li").eq(li_lengt-index).show().siblings().hide();
}
}
})
})


一、功能分析:
  1.滑鼠在圖片地區向左滑動,圖片“向左轉動”。
  2.滑鼠在圖片地區向右滑動,圖片“向右轉動”。

二、功能分析:
  2.1如何判斷滑鼠在圖片上面的滑動方向,即如何知道滑鼠是向左還是向右?
  以圖片的中心為參照,在中心點左邊,就是向左,在中心點右邊,就是向右。解決方案,是把滑鼠當前的X座標值,與中心點的X座標值,相減如果是負數就是向左的,如果是正數,就是向右的。

  2.2滑鼠滑動多少距離,圖片切換一張(轉動的實質,是不同面的圖片,在切換顯示)?
  分析:2.21整個圖片一共有18張,向左切換10張,向右就是切換8張。這樣所有的圖片,都能顯示出來,即可以有360度的效果。
     2.22滑鼠在圖片左邊和右邊移動的最大距離是圖片寬度的一半,如果我設定10次移動讓圖片全部切換一次,那麼就用這個最大距離除以10,就得到每次移動多少距離,算一次,而這一次就要切換一張圖片。

DEMO下載 http://demo.jb51.net/js/2012/mypic360/

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.