首頁 > web前端 > js教程 > 主體

jQuery圖片滾動圖片的效果(另類實作)_jquery

WBOY
發布: 2016-05-16 17:33:02
原創
1335 人瀏覽過

需求 : 圖片切換的時候下一頁不允許出現空白的項,換句話說就是 :

  1、當移動的最後一屏移動的個數小於要展示的個數的時候 ,只移動(展示個數-最後一屏的個數的)差值。 舉個例子: 每一屏都要展示7個,但總個數才10個,滾動到下一屏時候用戶看到的還是7個,這個時候需要移動的是三個

這個效果是基於jQuery寫的,只是想紀念下自己的學習 話不多說了,貼代碼

複製程式碼 程式碼如下:

(function( $ ){
     var slider = function( elem , args ){
         : 'x', //效果  水平- x
             speed      callback : null , // 回呼函數
             view    : 7
    | {}  );

         this.history = [];//記錄移動的歷史記錄
               this.length = this.el.find('li').length;//記錄總長度
         this.width = this.el.find('li').eq(0).outerWidth();//記錄每一個單一項目的寬度
         this.init();
     }
     slider.prototype = {      init : function(){
             this.bindEvents();
         },
         bindEvents : function(){
         this.next();
         },
         prev :  function(){ el.find('[data-type="left"]').click( $.proxy(function(){

               ,證明沒有進行移動過,所以直接return

                 this.index--;
    🎜>                 var move =  step * this.width;//算出移動寬度
                 this.el.find("ul").animate( { "left" : " =" move "ppx" }             }, this));
         },
      this.el.find('[data-type="right"]').click( $.proxy( function(){
                 //如果為目前的最後一頁,直接return
       10 ) ){
                     return;
                 }
                 this.index ;
               //計算( 下一頁* view ) 顯示個數是否大於總長度: 好比目前在第一頁(1 1) *7 > 12(總長度)
                 //則this.step 被賦值為剩餘,也就是剩下要移動的數量
   this   .length ) {
                     this.step =  this.length%this.config.view;              >                 }
                ush(this.step);
                 var move = -1 * this.step *this.width;
            🎜>
     $.fn.slider = function( args ){
         return this.each(function(){           var plugins = 新 slider( $( el ) , args );
             $(el).data("slider" , plugins );
      🎜>
開始對這個實現沒有好的想法,本來想利用一個變數記錄當前的移動個數的,但是後面突然想到用數組來做這樣子的處理,頓時感覺清晰了。

這個的實作重點是一個記錄移動步驟的陣列。往左移動的時候往陣列裡面push移動的步驟,往右移動的時候,從陣列裡面取最後一項 [].pop()。

這樣子很好的實現了需求,做的比較粗糙,麻煩各位大神提點意見
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!