Я думаю, что вы хотите отменить другие интервальные таймеры при запуске нового.
edit - Ой, подождите, я исправляю это ... хорошо, спасибо @kingjiv!!
$('a.tab').live('click',function() {
var value = $(this).attr('name');
var timers = $('body').data('timers') || {};
//....
for (var n in timers) clearInterval(timers[n]);
timers[value] = setInterval(function(){
$("div#timed").load('retriever.php', {"update":value} );
} ,1000);//set interval
//....
$(this).undelegate('click');
$('body').data('timers', timers);
});
Как уже говорили другие, этот вызов undelegate (), вероятно, не выполняет то, что вы думаете / хотите.
отредактируйте снова - это можетбыть более разумным;конечно, на теле должен быть только один идентификатор таймера.Иногда я немного медленный.