gpt4 book ai didi

javascript - 如何将 Ajax 加载器添加到幻灯片

转载 作者:行者123 更新时间:2023-11-28 04:16:26 26 4
gpt4 key购买 nike

我有一个简单的手动幻灯片。我想在加载测试 1、测试 2、测试 3 文本之前一直单击“预览”或“下一步”按钮时添加 ajax 加载程序图像。任何帮助来做到这一点

var slideIndex = 1;
showDivs(slideIndex);

function plusDivs(n) {
showDivs(slideIndex += n);
}

function showDivs(n) {
var i;
var x = document.getElementsByClassName("mySlides");
if (n > x.length) {slideIndex = 1}
if (n < 1) {slideIndex = x.length}
for (i = 0; i < x.length; i++) {
x[i].style.display = "none";
}
x[slideIndex-1].style.display = "block";
}
<div class="slider">
<button class="" onclick="plusDivs(-1)">&#10094;</button>
<button class="" onclick="plusDivs(1)">&#10095;</button>

<div class="mySlides">Test 1</div>
<div class="mySlides">Test 2</div>
<div class="mySlides">Test 3</div>
</div>

最佳答案

我通过CSS创建了加载图像!但通常加载图像是在ajax调用中使用的,以获得长响应!由于 javascript 是客户端语言,因此它执行速度非常快,因此我使用 setTimeout 进行了加载删除测试!

var slideIndex = 1;
showDivs(slideIndex);

function plusDivs(n) {
$(".loader").show();
setTimeout(function(){
showDivs(slideIndex += n);
},1000);
}

function showDivs(n) {
var i;
var x = document.getElementsByClassName("mySlides");
if (n > x.length) {slideIndex = 1}
if (n < 1) {slideIndex = x.length}
for (i = 0; i < x.length; i++) {
x[i].style.display = "none";
}
$(".loader").hide();
x[slideIndex-1].style.display = "block";
}
.loader {
border: 16px solid #f3f3f3; /* Light grey */
border-top: 16px solid #3498db; /* Blue */
border-radius: 50%;
width: 120px;
display:none;
height: 120px;
animation: spin 2s linear infinite;
}

@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="slider">
<button class="" onclick="plusDivs(-1)">&#10094;</button>
<button class="" onclick="plusDivs(1)">&#10095;</button>

<div class="mySlides">Test 1</div>
<div class="mySlides">Test 2</div>
<div class="mySlides">Test 3</div>
</div>
<div class='loader'></div>

关于javascript - 如何将 Ajax 加载器添加到幻灯片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45808673/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com