在页面的其余部分完成加载后,延迟加载html5视频
Delay loading of html5 video after the rest of the page finished loading
我有一个视频元素被用作我正在构建的页面底部部分的背景。我试图通过将src存储为数据src属性,并在其他资产加载后使用jQuery将其应用于src属性,为其构建一种"懒惰加载"(由于它不是英雄图像或任何东西,我想加载海报以节省剪切加载时间,然后稍后加载视频)。这似乎对我根本不起作用。src属性应用正确,但视频没有加载或自动播放。我是不是从错误的角度来看待这个问题?有更好的方法来实现它吗?
建立在wordpress上。
基本HTML
<video width="100%" loop controls autoplay class="connect-bg">
<source data-src="<?php echo get_template_directory_uri(); ?>/contact_Footer.mp4" type="video/mp4">
</video>
jQuery函数
$(window).load(function(){
footer_lazyloader();
});
function footer_lazyloader() {
var $ = jQuery;
$("video.connect-bg source").each(function(){
var sourceFile = $(this).attr('data-src');
$(this).attr('src',sourceFile);
});
}
您可以分别使用'.load()和'.play()手动触发视频加载和播放。使用"parentElement"以"source"元素的父元素为目标来完成此操作:
$(function() {
$("video.connect-bg source").each(function() {
var sourceFile = $(this).attr("data-src");
$(this).attr("src", sourceFile);
var video = this.parentElement;
video.load();
video.play();
});
});
相关文章:
- 延迟加载jquery后替换$(document).ready(function)
- 延迟加载背景图像时防止双重请求
- 在新表单上使用JavaScript创建多个共享点项目,但将下一页加载延迟到全部创建
- 延迟加载 脚本加载和/或执行
- 使jquery延迟加载插件在视口内工作
- 如何在水平滚动 Jquery 上实现延迟加载
- 如何使用angularjs延迟加载谷歌jsapi图表
- 使用requirejs对延迟加载成员模块进行Typescript
- 淘汰具有延迟加载的多选下拉列表
- Kendo UI树视图中的延迟加载(带缓存)
- 使用Twitter引导程序's Scrollspy到延迟加载(滚动加载)异步JavaScript
- Javascript客户端从ASP.NET MVC后端延迟加载模型
- 在featherlight.js中延迟加载iFrame
- 如何包含多个JS文件-延迟加载javascript
- 使用筛选延迟加载项目
- AngularJS正在等待CSS延迟加载
- 卸载/销毁角延迟加载组件
- 如何避免谷歌分析加载延迟加载事件监听器时脱机
- 延迟加载/延迟加载击倒模板,直到点击
- 是否可以使用反应延迟加载延迟加载背景图像