可能重复:
每隔5秒做一件事,并用代码停止它。(JQuery(
我有一个画廊,我想在不使用它的情况下自动运行。
我如何运行每5秒左右调用一次的脚本http://www.meadmiracle.com/SlidingGalleryDemo1.htm
我需要每隔5秒左右调用一次,这样画廊看起来就会自动滚动。
$.galleryUtility.slideLeft( )
您需要使用setInterval
方法
<script type="text/javascript">
$(window).load(function(){
setInterval( function(){
$.galleryUtility.slideLeft() ;
}, 5000);
});
</script>
更新
在您的特定情况下,您应该在初始化库后立即添加它。
<script language="javascript" type="text/javascript">
$(function() {
$('div.gallery img').slidingGallery(); // add it right after this line of you existing code
setInterval( function(){
$.galleryUtility.slideLeft() ;
}, 5000);
});
</script>
更新2
要开始停止自动滑动,您需要清除间隔,为此,您需要引用setInterval
调用的返回值。
<script type="text/javascript">
var autoSlideInterval;
function start_autoslide(){
autoSlideInterval = setInterval( function(){
$.galleryUtility.slideLeft() ;
}, 5000);
}
function stop_autoslide(){
clearInterval( autoSlideInterval );
}
$(function() {
$('div.gallery img').slidingGallery();
start_autoslide();
});
</script>
现在,当你想在自动幻灯片上加星号时,你可以调用start_autoslide();
,当你需要停止它时,你会调用stop_autoslide();
var id = setInterval(function ()
{
$.galleryUtility.slideLeft();
}, 5000);
每5秒钟就会调用一次。如果你需要让它在某个点或条件下停止,那么调用以下命令:
clearInterval(id); //You must pass in the id that was returned after calling setInterval()
澄清:
当您调用setInterval()
时,它实际上返回一个整数ID值。您将其存储并传递到clearInterval(**id goes here**)
中,以停止该代码的任何进一步执行。