停止自动刷新

时间:2013-09-22 01:49:45

标签: jquery

好吧,我一直致力于代码的新问题;单击打开项目时无法自动刷新,然后在单击项目后重新启动。

<script type='text/javascript'>
var auto_refresh = setInterval( function() { $('#body').load('body.php').fadeIn('slow'); }, 1000);
$(document).ready(function(){
            $('.star, .ship').click(function(){
                    var name = $(this).attr('name');
                    var type = $(this).attr('type');
                    var linkvar = 'content.php?lid=';
                    var link_full = linkvar + name;
                    $('#box').removeClass('hidden');
                    $('#box_content').addClass(type);
                    if(auto_refresh)
                    {
                        clearInterval(auto_refresh);    
                    }
                    $('#box_content').load(link_full);
                });
$('#close_this_box').click(function(){
    $('#box').addClass('hidden'); $('#box_content').empty();
    var auto_refresh = setInterval( function() { $('#body').load('body.php').fadeIn('slow'); }, 1000);
    });
$('.ship, .star').hover(
    function()
    { 
        $(this).children('div').removeClass('hidden');
    }, 
    function(){ $(this).children('div:nth-child(2)').addClass('hidden');});
});
</script>

它要么继续自动刷新,要么根本不加载#body div。

1 个答案:

答案 0 :(得分:3)

删除var函数

auto_refresh之前的$('#close_this_box').click(关键字
$('#close_this_box').click(function(){
    $('#box').addClass('hidden'); $('#box_content').empty();
    auto_refresh = setInterval( function() { $('#body').load('body.php').fadeIn('slow'); }, 1000);
});

使用var创建一个名为auto_refresh的局部变量,而不是修改全局变量auto_refresh