jQuery Orbit - How to make a Random Slideshow?

限于喜欢 提交于 2019-12-11 03:47:05

问题


I have found a cool slideshow for my website.

When the page loads, the first picture appears in the slideshow.

I want slideshow to randomly display some pictures when the page loads.

Javascript Code :

 (function($) {
    $.fn.orbit = function(options) {

    var defaults = {  
    animation: 'fade',                  
    animationSpeed: 800,                
    timer: false,                       
    advanceSpeed: 4000,                 
    pauseOnHover: false,                
    startClockOnMouseOut: false,       
    startClockOnMouseOutAfter: 1000,    
    directionalNav: true,               
    captions: true,                     
    captionAnimation: 'fade',          
    captionAnimationSpeed: 800,        
    bullets: false,                     
    bulletThumbs: false,                
    bulletThumbLocation: '',           
    afterSlideChange: function(){}      
};

Any ideas ?


回答1:


so; Open Source Code ORBIT Objects settings add random default false:

defaults: {                                                                 
    animation: 'horizontal-push',     
    animationSpeed: 600,              // how fast animtions are               
    timer: true,                      // true or false to have the timer      
    advanceSpeed: 4000,               // if timer is enabled, time between transitions 
    pauseOnHover: false,              // if you hover pauses the slider       
    startClockOnMouseOut: false,      // if clock should start on MouseOut    
    startClockOnMouseOutAfter: 1000,  
    directionalNav: true,                 // manual advancing directional navs
    captions: true,                   // do you want captions?                
    captionAnimation: 'fade',             // fade, slideOpen, none            
    captionAnimationSpeed: 600,       // if so how quickly should they animate in
    bullets: false,                   
    bulletThumbs: false,              // thumbnails for the bullets           
    bulletThumbLocation: '',          // location from this file where thumbs will be
    afterSlideChange: $.noop,     // empty function                           
    fluid: false,             
    centerBullets: true,

    /////////////////////////// add Line
    random: false, // or true 
    ////////////////////////////

    },

after ORBIT Objects {loaded} method add to if (options.random) then Random:

loaded: function () {                                                       
    this.$element                                                             
        .addClass('orbit')                                                      
        .css({width: '1px', height: '1px'});                                    

    this.setDimentionsFromLargestSlide();                                     
    this.updateOptionsIfOnlyOneSlide();                                       
    this.setupFirstSlide();                                                   

    if (this.options.timer) {                                                 
        this.setupTimer();                                                      
        this.startClock();                                                      
    }                                                                         

    if (this.options.captions) {                                              
        this.setupCaptions();                                                   
    }                                                                         

    if (this.options.directionalNav) {                                        
        this.setupDirectionalNav();                                             
    }                                                                         

    if (this.options.bullets) {                                               
        this.setupBulletNav();                                                  
        this.setActiveBullet();                                                 
    }                                                                         


  //////////////////////////////// add Line                                                                   
  if (this.options.random)                                                  
      this.shift(this.Random.__init__()); 
  /////////////////////////////////////                                  

},

after; add ORBIT Objects new method {Random}

    Random: {                                                                      

        __init__: function() {                                                     

            return this.math();                                                    
        },                                                                         

        math: function() {                                                       
            var bullets_count = (jQuery(".orbit-bullets li").length -1);           

            return (Math.floor(Math.random() * (bullets_count - 0 + 1)));          
        }                                                                                                                                               
},

take it easy..



来源:https://stackoverflow.com/questions/12177967/jquery-orbit-how-to-make-a-random-slideshow

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!