我window.location.href
用来加载页面,现在我已经切换到window.onload()
功能,但是页面没有加载一些内容。
window.location.href = $(this).val();
是我正在使用的代码。
如何使用window.onload()
函数编写它?
我window.location.href
用来加载页面,现在我已经切换到window.onload()
功能,但是页面没有加载一些内容。
window.location.href = $(this).val();
是我正在使用的代码。
如何使用window.onload()
函数编写它?
window.onload
是一个属性,您可以为其分配一个在页面完成加载时将运行的函数。默认情况下它没有分配一个函数,所以除非你先给它分配一个函数,否则你不能调用它。它与导致浏览器转到不同的 URL 无关。
直接分配onload
函数也已被addEventListener取代。
您可以为其分配一个将设置location.href
为新值的函数
// Don't do this
function redirect() {
location.href = "http://example.com";
}
addEventListener('load', redirect);
…但是如果您在页面加载后立即执行此操作,那么您应该使用 HTTP 重定向。
两者是完全不同的概念
该window.onload
事件是 DOM 中的标准事件,同时window.location.href
返回当前页面的位置。
它们都在完全不同的上下文中使用。
onload 是一个事件
location.href 是一个属性
*window.onload*
如果您想在页面内容完全加载时采取一些行动,则使用此事件(这包括您的所有元素、图像等)时采取一些操作,则使用此事件。因此,如果您的项目在内容加载后需要一些操作,您可以根据您的功能分配任何功能.
*window.location.href*
这用于重定向目的。我只会在我希望我的用户转到某个不同的页面时使用它。
在您的上下文 中在 window.onload 事件上执行 window.location.href 是没有意义的。如果您不允许用户在加载页面上花费一些时间,那么我建议直接加载您包含的页面
window.location.href="this url shoulod be loaded directly instead";
当较短的路线如此有效时,为什么要选择更长的路线?
window.location.href="url" 是您在 javascript 函数中调用以加载其他页面(url)。当您单击普通网页上的超链接时,它所做的事情完全相同。
window.onload() 是一个事件处理程序;当加载 HTML 页面时,您可以使用它来使用 javascript 做几件事。换句话说,这将在页面加载事件发生时被调用。
这是两个不同的东西。
例如,您可以使用 window.location.href="url" 转到另一个页面,并且在该新页面中,您可以使用 window.onload() 事件处理程序来执行您希望在该页面加载时发生的事情。
例如:
<script>
window.onload=function(){
document.write("hi! this text was written when the page was being loaded");
}
</script>
谢谢。