MC.caro.myTimer()
なぜページの読み込みで実行されているのか、その変数がわかりません。それで、私がそれを呼ばずにこれがどのように実行されるのか。
自動実行機能と関係があるのではないかと思いました。
var MC = {};
(function($){
"use strict";
MC.init = function (){
//disable to turn off carousel
MC.caro.init();
};
MC.caro = {
init: function(){
//Build carousel for us to use
MC.caro.build();
//Bind click events to buttons
$('.mc-carousel--nav--buttons').on('click','li',function(){
MC.caro.advance($(this));
//stop the current ticking
MC.caro.stopMyTimer();
//Start up movement after 15seconds
setInterval(function(){MC.caro.myTimer()},10000);
console.info('running');
});
},
build: function(){
MC.caro.jsonRun(function(){
console.info('running1');
});
},
myTimer: function(){
console.info('running2');
MC.caro.advance(nextItem,'slow');
},
//Sets up the timer
timer:setInterval(function(){MC.caro.myTimer()},5000),
stopMyTimer: function(){
clearInterval(MC.caro.timer);
}
}
})(jQuery);
MC.init();
別の問題があります:
コードをクリックすると$('.mc-carousel--nav--buttons').on('click','li',function(){
、15秒待ってから実行されます。予想通り。しかし、5回クリックすると、15秒待ってから、クリックしたのとまったく同じ時間と順序で実行されます。つまりMC.caro.stopMyTimer();
、クリックイベント内で呼び出され、機能していません。
また、これは完全なコードではありません。イントラネットに大きく依存しているため、フィドルに入れることもできません。
あなたが実際の例を見ることができないほどのappoligies。