了解bootstrap轮播代码

时间:2015-04-25 00:42:36

标签: javascript jquery twitter-bootstrap carousel

嘿伙计们我是JS和jQuery的新手,我刚刚浏览了carousel.js的来源并遇到了以下代码:

this.cycle(true)

现在循环功能看起来像这样:

  Carousel.prototype.cycle = function (e) {

    // console.log('inside cycle');
    e || (this.paused = false)

    this.interval && clearInterval(this.interval)

    this.options.interval
      && !this.paused
      && (this.interval = setInterval($.proxy(this.next, this), this.options.interval))

    return this
  }

如果我console.log(e),我永远不会得到真实的'的 WHY吗 我所指的行可以找到here

有人可以向我解释为什么this.cycle()在该行传递值true

谢谢。

2 个答案:

答案 0 :(得分:3)

循环函数内的console.log(e)应该返回true。但是,更容易理解的代码细分是这样的:

Carousel.prototype.cycle = function (e) {

    // console.log('inside cycle');
    //e || (this.paused = false)
    if(!e){
        this.paused=false;
    }

    //this.interval && clearInterval(this.interval)
    if(this.interval){
        clearInterval(this.interval);   
    }

    /*
    this.options.interval
      && !this.paused
      && (this.interval = setInterval($.proxy(this.next, this), this.options.interval))
    */
    if(this.options.interval && !this.paused){
        this.interval = setInterval($.proxy(this.next, this), this.options.interval)
    }
    return this
  }

答案 1 :(得分:0)

根据代码,如果您没有通过任何内容或通过false,它也会取消暂停转盘。传递true基本上意味着"不要自动滚动我的轮播"。这段代码真的很神奇:

this.paused = false