我试图在数据加载出现延迟时向用户显示页面加载 功能。它以相反的方式工作。假设页面中有一个表格,如果表格长度为零,那么它将显示一个页面加载功能,如请稍候。所以我用 jQuery
尝试了这样的事情:
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/sweetalert2@7.29.1/dist/sweetalert2.all.js"></script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/promise-polyfill"></script>
<script type="text/javascript">
$(window).load(function () {
if ($('table').length != 0) { //Checking the table length here
swal.close(); //Close when data uploaded
console.log($('table').length);
}
else if ($('table').length == 0) {
swal.showLoading(); //Show when data upload delayed or zero
console.log($('table').length);
}
});
</script>
这很简单,但是它在页面最初上传数据时没有显示请稍候 功能。当我尝试反向时,比如说,页面加载,然后该功能完美运行。我在这里遗漏了什么吗?
最佳答案
Jquery的load事件会在窗口内的所有元素加载完成后触发。这就是为什么您的代码仅在加载已经完成时(当您反转它时)才有效。
$(window).load(function () {
此函数中的所有内容都会在页面完全加载后触发。尝试这样做。
if ($('table').length == 0) {
swal.showLoading(); //Show when data upload delayed or zero
console.log($('table').length);
}
$(window).load(function () {
if ($('table').length != 0) { //Checking the table length here
swal.close(); //Close when data uploaded
console.log($('table').length);
}
});
关于javascript - 下一条语句不执行 - jQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53466531/