Я хочу показать четыре div один раз, но цикл. Если четыре div сначала отображаются после 30-х годов, то четыре div сначала скрывают четыре div, затем показывают после 30-х, четыре div сначала показывают, четыре div затем скрывают и продолжают повторять так. Как это сделать?
<div class = "list-div">
<div>Content</div>
<div>Content</div>
<div>Content</div>
<div>Content</div>
<div>Content1</div>
<div>Content1</div>
<div>Content1</div>
<div>Content1</div>
</div>



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Попробуйте использовать jQuery.загрузить() для загрузки PHP-скрипта, генерирующего ваши HTML DIV, которые вы затем можете сделать в интервал.
Вы можете добавить класс к своим элементам, а затем использовать .переключать() в jquery, чтобы скрыть/показать элементы div. Пример ниже переключает скрытие/отображение ваших div каждые 3 секунды:
$('.div-2').hide();
setInterval(function() {
$('.div-1').toggle();
$('.div-2').toggle();
}, 3000)<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class = "list-div">
<div class = "div-1">Content</div>
<div class = "div-1">Content</div>
<div class = "div-1">Content</div>
<div class = "div-1">Content</div>
<div class = "div-2">Content1</div>
<div class = "div-2">Content1</div>
<div class = "div-2">Content1</div>
<div class = "div-2">Content1</div>
</div>Или без добавления класса с :lt() и :гт():
$('.list-div div:gt(3)').hide();
setInterval(function() {
$('.list-div div:lt(4)').toggle();
$('.list-div div:gt(3)').toggle();
}, 3000)<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class = "list-div">
<div>Content</div>
<div>Content</div>
<div>Content</div>
<div>Content</div>
<div>Content1</div>
<div>Content1</div>
<div>Content1</div>
<div>Content1</div>
</div>Попробуйте этот код, он будет работать: -
<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<div class = "list-div">
<div class='first'>Content</div>
<div class='first'>Content</div>
<div class='first'>Content</div>
<div class='first'>Content</div>
<div class='second'>Content1</div>
<div class='second'>Content1</div>
<div class='second'>Content1</div>
<div class='second'>Content1</div>
</div>
<script>
var count = 1;
$('.second').hide();
window.setInterval(function() { //calls click event after a certain time
changeDiv();
}, 30000);
function changeDiv(){
if (count==1){
$('.second').show();
$('.first').hide();
count=2;
}else{
$('.second').hide();
$('.first').show();
count=1;
}
}
</script>Реализуйте нижеприведенный код..
$(document).ready(function(){
$.each([4, 5, 6,7], function(i, v) {
$(".list-div div").eq(v).hide();
});
setInterval( function(){
$.each([4, 5, 6,7], function(i, v) {
$(".list-div div").eq(v).toggle();
});
$.each([0, 1, 2,3], function(i, v) {
$(".list-div div").eq(v).toggle();
});
} , 2000 );
});<script src = "https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<div class = "list-div">
<div>ContentG1</div>
<div>ContentG1</div>
<div>ContentG1</div>
<div>ContentG1</div>
<div>ContentG2</div>
<div>ContentG2</div>
<div>ContentG2</div>
<div>ContentG2</div>
</div>Я надеюсь, что с помощью приведенного выше скрипта ваша проблема будет решена. Если вы хотите установить 30 секунд, то пройдите 30000. здесь 1 секунда = 1000
Спасибо ! Если у меня шестнадцать делений, как вы это делаете? (вперед)
@Vu Thanh tung Используя цикл, вы можете создать динамический массив.
Вы пробовали что-нибудь, что можете нам показать? Мы можем помочь вам исправить ваш код