pasa que le estas diciendo que cuando hace el mouseover aparezca y desaparezca por eso el parpadeo
Código HTML:
<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready( function (){
$(".tooltip a").mouseover( function(){
label = $('label[for="' + $(this).attr("class") + '"]').show(500);
label.delay(5000).hide(500);
});
});
</script>
<style>
label{background-color:blue; display:none}
</style>
</head>
<body>
<div class="tooltip">
<label for="miClase"> asd </label>
<a href="#" class="miClase">link</a>
</div>
</body>
</html>
lo que hago es seleccionar el label y mostrarlo, a la vez guardo el objeto en la variable label, después al objeto que está en la variable label le aplico un delay de 5 segundos para que luego lo esconda
ojo que delay() esta disponoble en la versión 1.4
con setTimeout
Código HTML:
<script>
$(document).ready( function (){
$(".tooltip a").mouseover( function(){
label = $('label[for="' + $(this).attr("class") + '"]').show(500);
setTimeout("esconder()",5000);
});
});
function esconder(){
label.hide(500)
}
</script>
tambien en vez de crear una función para esconder podes pasar como parámetro label.hide(500) a setTimeout entre comillas