Здравствуйте, есть у меня меню  каждой кнопке которого соответствует 
разный get запрос.  На второй кнопке он рекурсивно повторяется через 0.3 секунды(обновляет div).  При при нажатии на другую кнопки  он должен прекратится и отправится другой запрос. Примерно так и происходит  но вот время от времени  он не сбрасывается и получается отправляется  1 нужный запрос и кучу не нужных. Подскажите из за чего такое может происходить. И как точно остановить функцию showContent.
Функция showContent
      var intervalID;
    function showContent(link, divtarget) {
        var cont = document.getElementById(divtarget);
        (function _f() {
            var http = createRequestObject();
            if( http ) {
                http.open('GET', link, true);
                http.onreadystatechange = function () {
                    if (http.readyState == 4) {
                        cont.innerHTML = (http.status == 200) ? http.responseText : '.........';
						intervalID = setTimeout(_f, 300);
                       // setTimeout(_f, 200);
                    }
                };
                http.send(null);
            } else {
                cont.innerHTML = 'error ajax';
				intervalID = setTimeout(_f, 300);
                //setTimeout(_f, 200);
            }
        })();
    }
    function createRequestObject()
    {
        try { return new XMLHttpRequest() }
        catch(e)
        {
            try { return new ActiveXObject('Msxml2.XMLHTTP') }
            catch(e)
            {
                try { return new ActiveXObject('Microsoft.XMLHTTP') }
                catch(e) { return null; }
            }
        }
    }
Функция showContent_old  отправляет только 1 запрос.
    function showContent_old(link, divtarget) {
        var cont = document.getElementById(divtarget);
        var http = createRequestObject();
        if( http )
        {
            http.open('get', link);
            http.onreadystatechange = function ()
            {
                if(http.readyState == 4)
                {	
                    cont.innerHTML = http.responseText;
                }
            }
            http.send(null);
        }
        else
        {
            cont.innerHTML = 'error';
        }
    }Кнопки(меню)
	function index() {
		clearInterval(intervalID);
		clearInterval(intervalID);
	
		showContent_old('LED.CGI?table_Index','page_status')
	}
	function Page_var() {
		clearInterval(intervalID);
		clearInterval(intervalID);
		showContent_old('LED.CGI?table_conteint','table_conteint')	
		showContent('LED.CGI?table_show','center_tabl_show')
	}
	function page_set() {
		clearInterval(intervalID);
		clearInterval(intervalID);
		But_var[0].disabled=false;		
		showContent_old('LED.CGI?table_set','page_set')
	}
При загрузки страницы выполняется 
		showContent_old('LED.CGI?table_conteint','table_conteint')	
		showContent('LED.CGI?table_show','center_tabl_show')