Javascript 单击#fr#u tab div并单击文档中的任意位置清除设置间隔

Javascript 单击#fr#u tab div并单击文档中的任意位置清除设置间隔,javascript,jquery,Javascript,Jquery,我有这个jquery代码: $('#fr_tab').click(function() { $("#tab2").empty().html('<img src="images/loading.gif" />'); var handle = setInterval(function () { $('#tab2').load('fr_quests.php'); }, 3000); }); $('body').click(functi

我有这个jquery代码:

    $('#fr_tab').click(function() {
    $("#tab2").empty().html('<img src="images/loading.gif" />');
var handle = setInterval(function () {
    $('#tab2').load('fr_quests.php');
    }, 3000);   
    });

    $('body').click(function() {
        if (handle) {
            clearInterval(handle);
            handle = 0;
        }
    });
$('fr#u选项卡')。单击(函数(){
$(“#tab2”).empty().html(“”);
变量句柄=设置间隔(函数(){
$('#tab2').load('fr#quests.php');
}, 3000);   
});
$('body')。单击(函数(){
if(句柄){
间隙(手柄);
句柄=0;
}
});

我想知道单击#fr#u选项卡时如何设置Ineterval,以及如果单击了文档中的任何位置,如何清除它。

您将希望在
$(文档)上触发。而不是('#tab2')。单击(…

您的
句柄
变量是第一个
函数
的局部变量。删除
var
前缀使其全局化是使其工作的最快方法,尽管肯定不是最好的方法

或者,如果代码位于$(document).ready(…)函数中,则不使用全局变量

    $(document).ready(function () {
        var handle
        $('#fr_tab').click(function() {
            $("#tab2").empty().html('<img src="images/loading.gif" />');
            handle = setInterval(function () {
                $('#tab2').load('fr_quests.php');
            }, 3000);   
        });

        $('body').click(function() {
            if (handle) {
                clearInterval(handle);
                handle = 0;
            }
        });
    });
$(文档).ready(函数(){
变量句柄
$(“#fr_选项卡”)。单击(函数(){
$(“#tab2”).empty().html(“”);
handle=setInterval(函数(){
$('#tab2').load('fr#quests.php');
}, 3000);   
});
$('body')。单击(函数(){
if(句柄){
间隙(手柄);
句柄=0;
}
});
});
hmm…在$('body')内放置一个警报('click triggered')。单击函数查看问题是清除间隔还是单击触发器