javascript - 下一条语句不执行 - jQuery

标签 javascript jquery html

我试图在数据加载出现延迟时向用户显示页面加载 功能。它以相反的方式工作。假设页面中有一个表格,如果表格长度为零,那么它将显示一个页面加载功能,如请稍候。所以我用 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);
      }
});

引用:https://api.jquery.com/load-event/

关于javascript - 下一条语句不执行 - jQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53466531/

相关文章:

javascript - 错误 : Uncaught ReferenceError: module is not defined when using module. 导出

javascript - 水平滑动页面需要在点击下一个按钮时设置位置顶部

php - 如何将 var url 放入 JavaScript 中?

javascript - 无法使用 JavaScript 发送 POST-JSON-Request

javascript - dataLayer.push后数据什么时候发送到google

javascript - gridster.js 使用 highcharts 时调整大小问题

javascript - 转动按钮可以用鼠标中键点击

javascript - 如何在 jQuery 中验证是否所有复选框都被选中?

javascript - 在数据表中获取 tr id 值

html - 使内容在固定 div 之间负责