JS计时器在用完时会清空页面上的所有内容。
window.setTimeout(function() {
document.write("<link rel='prerender' href='http://google.com' />")
}
,10000
);
当JS被放置在头部和身体内时,效果就会发生。
如何在不将页面变为空白的情况下基于计时器进行预取/预渲染? (所有内容都消失了。没有网址重定向。我留下了空白页面)
答案 0 :(得分:0)
document.write只能在文档准备好显示之前使用。它应该在构建时内联使用。如果在文档准备就绪后使用它将导致像你面临的问题。
如果您使用的是jQuery,可以使用他们的getScript函数:
window.setTimeout(function() {
$.getScript('script.js',function(){
//this is your callback function to execute after the script loads
});
}
,10000
);
或者,如果仅使用javascript this问题可能对您有用。他们使用:
(function(d, t) {
var g = d.createElement(t), // create a script tag
s = d.getElementsByTagName(t)[0]; // find the first script tag in the document
g.src = 'your-script.js'; // set the source of the script to your script
s.parentNode.insertBefore(g, s); // append the script to the DOM
}(document, 'script'));