rel=“prerender” load event?预呈现完成时通知用户
rel="prerender" load event? Notify users when prerender finishes
在页面 A 上,我动态插入一个指向页面 B 的预呈现标签:<link rel="prerender" href="page B"/>
。
我想知道prerender
在加载完页面 B 时是否触发了一个事件,我可以从页面 A 上的 javascript 访问该事件。
如果浏览器对此没有任何支持,还有其他解决方法吗?
不幸的是,加载和错误事件不会使用 rel="prerender" 触发,在 Chrome/Firefox 中也是如此(我不知道为什么)。
取而代之的是,我使用 rel="preload",一切正常(但仅适用于 Chrome)
此外,您还可以使用 as 参数添加资产类型
<link rel="preload" as="document" href="some.html">
我的打字稿方法是创建下载链接的下一个:
private createLinkToPreload(externalHref: string): HTMLElement {
let linkElement = document.createElement("link");
linkElement.rel = "preload";
linkElement.href = externalHref;
let me = this;
linkElement.onload = () => {me.onElementPreloaded(externalHref)};
linkElement.onerror = () => {me.onElementPreloadError(externalHref)};
return linkElement;
}
private onElementPreloaded(externalHref: string) {
console.log(`${externalHref} preloaded`);
}
private onElementPreloadError(externalHref: string) {
console.log(`Error while preloading ${externalHref}`);
}
link
标记在完成加载时触发加载事件。
link.addEventListener('load', func(e));
或
link.onload = func;
为了获得最大的浏览器支持,请不要使用 link
。只需使用 AJAX 获取文件即可。
相关文章:
- 如何在自动完成时设置属性标题
- Adobe Edge:动画完成时添加onComplete处理程序
- 当一些事情可以通过JS或CSS完成时,我应该选择哪种方式
- 当send_data完成时,Rails send_data和Javascript处理程序
- 如何在uploadify/uploadifive中使用OnQueueComplete事件在队列完成时发送电子邮件
- 在操作完成时执行函数
- JQuery AJAX 在 GET 请求完成时返回 XML
- fadeIn仅在未显示且fadeOut完成时显示
- 是否有任何事件“;在$scope摘要完成时”;或“;在视图刷新时”;在Angular.js中
- 当所有表单字段都完成时,jquery将图像添加到列表项中一次
- 当用户名和传递请求通过ajax完成时,我如何重定向页面
- 当视频停止或播放完成时,谷歌SWFObject javascript检测
- Javascript:对象在自动完成时应出现错误
- Jquery 将内容加载到 ajax 容器中,并在完全完成时发出警报
- Ext.Ajax.isLoading 在并非所有请求都完成时返回 false
- Dojo 两个 XHR 请求和回调函数仅在两者完成时触发
- rel=“prerender” load event?预呈现完成时通知用户
- NG模型仅在使用谷歌地图自动完成时单击后更新输入
- 在 AJAX 完成时加载 GIF
- JQuery UI自动完成-当用户在文本框中单击时打开菜单