jQuery的remove()函数是否会取消元素的请求

时间:2018-09-13 18:37:57

标签: javascript jquery

我想知道jQuery的remove()函数是否可以可靠地取消页面加载期间触发的请求。 给出以下设置:

<html>
<head>
    <link rel="stylesheet" media="all" href="../node_modules/vuetify/dist/vuetify.min.css" type="text/css"/>
    <link rel="stylesheet" href='../node_modules/material-design-icons-iconfont/dist/material-design-icons.css' type="text/css">
    <script src="./scripts/vue.js"></script>
    <script src="../node_modules/vuetify/dist/vuetify.js"></script>
</head>
<body>
    <div id="app">
        <v-app id="inspire">
            <v-toolbar app>
                <v-toolbar-title>Title</v-toolbar-title>
            </v-toolbar>
            <v-content>
              <v-container>Hello world</v-container>
            </v-content>
          </v-app>
    </div>
</body>    
<script src="index.js"></script>
</html>

它们是相当大的视频,可以在响应中返回(〜40mb)。

当我在JS中使用它时:

<video>
  <source src="movie1.mp4" type="video/mp4">
</video>

<video>
  <source src="movie2.mp4" type="video/mp4">
</video>

已经请求的视频仍会加载吗?是否会加载任何视频?

您可以假设这是关于取消不必要的视频加载,而这些视频无论如何也不会在移动设备上显示。

1 个答案:

答案 0 :(得分:1)

运行以下代码段后,我注意到在当前“块”完成下载后,确实确实停止了文件的下载。这样可以防止大量资源进一步加载。

$(document).ready(function() {
  setTimeout(function() {
    $('video').remove();
  }, 10000);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<video src="https://www.sample-videos.com/video/mp4/720/big_buck_bunny_720p_30mb.mp4"  type="video/mp4" controls>

并且在下载/停止10秒后(块已完成下载,然后停止下载更多数据):