div 자동 스크롤을 만들기 위해 jquery 플러그인을 작성했습니다. setInterval 함수를 사용하여 잠시 div를 멈추고 스크롤을 계속 사용했습니다. 여기가 잘 작동 코드내 jquery 플러그인에서 Interval 함수를 중지하는 방법
(function($){
"use strict";
function scrolltotop(obj,height,speed){
var ch=parseInt($(obj).css("margin-top"))+29;
$(obj).parent().find(".moving").remove();
$(obj).after($(obj).clone().addClass("copy"));
$(obj).addClass("moving").removeClass("copy").animate({
"margin-top":-27
},speed);
loop=setInterval(function(){
ch+=27;
if(ch < height+27){
$(obj).animate({
"margin-top":-ch
},speed,function(){
loop;
})
}else{
clearInterval(loop);
scrolltotop($(obj).next(".copy"),height,speed);
}
},4000)
}
$.fn.extend({
autoscroll: function(options) {
var defaults = {
speed: 1000,
scroller : '#scroller',
scroller_container : '#scroller_container'
}
var options = $.extend(defaults, options);
var height=$(options.scroller).height();
var stop=stopscroll();
//console.log(height)
scrolltotop(options.scroller,height,options.speed);
},
});
}(jQuery));
$("#list2").autoscroll({scroller:"#list2",scroller_container:"#container_2"});
이지만, idont 내가 플러그인을 초기화하기 후 DIV 정지 스크롤을 만드는 방법을 알고.
당신이 플러그인의 높이를 정의합니까? 나는 당신의 루프가 루핑을 계속한다고 생각한다. 왜냐하면 당신의 높이는 아마도 정의되지 않았기 때문에 당신이 else 문을 사용하지 않을 것이기 때문이다. 콘솔에 출력 해보십시오. – putvande