Вот т.с. гарантированное окончание анимации...
<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251' />
<script src='http://code.jquery.com/jquery-latest.js'></script>
<!--
<script src="https://code.angularjs.org/1.3.9/angular.min.js"></script>
<script src="https://code.angularjs.org/1.3.9/angular-route.js"></script>
-->
<style type='text/css'>
.domotireg {
display: none;
position: relative;
}
td {
border: 1px solid black;
}
</style>
<script type='text/javascript'>
$(function (){
var i = 0;
var msg_count = 2;
iteration();
function iteration() {
if (++i > msg_count) i = 1;
$.when(
$('.domotireg:nth-child(' + i + ')').fadeIn(2500).delay(2000).fadeOut(2500)
).then(function (){
setTimeout(iteration,1000);
});
};
});
</script>
</head>
<body>
<table style='display:table'>
<tr>
<td>
<table class='domotireg'>
<tr>
<td>
1
</td>
<td>
2
</td>
</tr>
<tr>
<td>
3
</td>
<td>
4
</td>
</tr>
<tr>
<td>
1
</td>
<td>
2
</td>
</tr>
<tr>
<td>
3
</td>
<td>
4
</td>
</tr>
</table>
<table class='domotireg'>
<tr>
<td>
5
</td>
<td>
6
</td>
</tr>
<tr>
<td>
7
</td>
<td>
8
</td>
</tr>
<tr>
<td>
5
</td>
<td>
6
</td>
</tr>
<tr>
<td>
7
</td>
<td>
8
</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>