Неправильно работет скрипт
задача: есть 67 div-ов, нужно менять их из через определенный отрезок времени. вот скрипт:
<script> jQuery(document).ready(function($) { var i = 0; var msg_count = 67; setInterval( function () { i = i + 1; if (i > msg_count) i = 1; $('.domotireg:nth-child(' + i + ')').fadeIn(500).css('display', 'table').delay(7000).fadeOut(500); }, 15000); }); </script> проблема в том что они менются - но предыдущий не исчезает. Подскажите пожалуйста где косяк. |
Цитата:
|
ghost666, может этот пример тебе поможет
http://javascript.ru/forum/jquery/23...-animacii.html |
ghost666,
А зачем .css('display', 'table') ? |
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"> </script> <style> .domotireg { display: none; position: relative; } td { border: 1px solid black; } </style> <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> <script type="text/javascript"> window.onload = function () { var i = 0; var msg_count = 2; setInterval( function () { i = i + 1; if (i > msg_count) i = 1; $('.domotireg:nth-child(' + i + ')').fadeIn(2500).delay(2000).fadeOut(2500); }, 7000); } </script> </body> |
Dilettante_Pro, в твоем варианте бывают случаи, когда видно обе таблички "1234" и "5678"... :(
|
Вот т.с. гарантированное окончание анимации...
<!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> |
Цитата:
|
Часовой пояс GMT +3, время: 00:10. |