什么';在HTML中设置新预渲染或预回迁的正确方法是什么? HTML文档 document.addEventListener('click',函数(){ //预渲染https://www.apple.com/ipad 在铬上。 // ... //预取https://www.apple.com/ipad 在Firefox上。 // ... },假);
打开页面时,会在不同的浏览器上预呈现和预取。单击文档时,我希望预呈现和预取另一页 看来我们有两种方法可供选择。我们可以替换当前2个什么';在HTML中设置新预渲染或预回迁的正确方法是什么? HTML文档 document.addEventListener('click',函数(){ //预渲染https://www.apple.com/ipad 在铬上。 // ... //预取https://www.apple.com/ipad 在Firefox上。 // ... },假);,html,google-chrome,firefox,prefetch,prerender,Html,Google Chrome,Firefox,Prefetch,Prerender,打开页面时,会在不同的浏览器上预呈现和预取。单击文档时,我希望预呈现和预取另一页 看来我们有两种方法可供选择。我们可以替换当前2个链接元素中的URL。或者我们可以将两个新的link元素插入head元素 在HTML中设置新预渲染的正确方法是什么 在HTML中设置新预取的正确方法是什么 我试图在Chrome上替换prerenderlink元素的URL从到。我打开了Chrome的任务管理器,发现它没有预先修改。唯一的预呈现页面仍然是。因此,这种方法似乎不起作用?1)您不需要同时使用预回迁和预渲染链接,
链接元素中的URL。或者我们可以将两个新的link
元素插入head
元素
在HTML中设置新预渲染的正确方法是什么
在HTML中设置新预取的正确方法是什么
我试图在Chrome上替换prerenderlink
元素的URL从到。我打开了Chrome的任务管理器,发现它没有预先修改。唯一的预呈现页面仍然是。因此,这种方法似乎不起作用?1)您不需要同时使用预回迁和预渲染链接,只需要预渲染。预渲染链接将加载预回迁所做的一切,等等
2) 要回答您的问题,请使用方法2并插入另一个带有javascript的prerender链接。有些东西与此相关:
<!DOCTYPE html>
<meta charset="utf-8">
<title>An HTML Document</title>
<link rel="prefetch" href="https://www.apple.com/">
<link rel="prerender" href="https://www.apple.com/">
<script>
document.addEventListener('click', function () {
// Prerendering https://www.apple.com/ipad on Chrome.
// ...
// Prefetching https://www.apple.com/ipad on Firefox.
// ...
}, false);
</script>
var myHead=document.getElementsByTagName('head')[0];
var myLink=document.createElement('link');
setAttribute('rel','prerender');
myLink.setAttribute('href','http://apple.com/ipad');
myHead.appendChild(myLink);
或者,如果您使用jQuery:
<script>
var myHead = document.getElementsByTagName('head')[0];
var myLink = document.createElement('link');
myLink.setAttribute('rel', 'prerender');
myLink.setAttribute('href', 'http://apple.com/ipad');
myHead.appendChild(myLink);
</script>
$(“head”)。追加(“”);
实际上是
似乎是
这是不正确的。您确实需要预取和预渲染(或者至少需要一个将两者都输出的polyfill)作为和。首先,您让我有点困惑于预取和预渲染
用法之间的混合。它们的用法应该是这样的:
$("head").append('<link rel="prerender" href="http://apple.com/ipad">');
预取
用法:
它应该用于获取和缓存资源,以便以后用户按照进行导航(即预取css文件,以便在用户即将进行的导航中很可能使用的页面中使用)。在Chrome、Firefox和IE中受支持
预渲染
用法:
它应该用于预呈现一个完整的页面,用户很可能会在即将到来的导航中导航到该页面(例如,就像预呈现下一篇文章一样,用户很可能会单击“下一篇文章”按钮)。仅在Chrome和IE中支持
回到您的问题,您可以添加您真正需要的浏览器提示(例如,像您使用的两个链接
),只是不要滥用它们,因为它们占用大量资源
因此,您可以在生成页面时注入提示(就像您所做的那样),也可以在运行时使用如下javascript注入提示:
$("head").append('<link rel="prerender" href="http://apple.com/ipad">');
要更好地了解如何使用所有“pre-”
goodies,请参阅这篇精彩的文章。IE11现在支持这两者。最好的方法是将两者结合起来,例如,
?插入动态生成的prerender标记不会导致Firefox为我提取任何内容。我没有测试其他浏览器,而是选择使用ajax获取它。prerender不受广泛支持()