如何更改页面的位置而不是重定向用户?

时间:2009-10-18 19:00:53

标签: javascript html redirect location-href

我希望能够更改页面的地址,但在进行更改时不会发出任何HTTP请求。如何使用JavaScript完成?

6 个答案:

答案 0 :(得分:11)

您的意思是,我正在访问http://www.fakebank.example,您希望地址栏显示http://www.yourbank.example?我认为有明显的理由这是不可能的。

答案 1 :(得分:0)

您可以在没有页面加载的情况下设置location.hash,但我不确定这是否是您想要的 - 您的问题相当模糊。

答案 2 :(得分:0)

假设您的意思是浏览器地址栏中指明的地址,我不相信它可以。据我所知,设置document.location或window.location将自动触发页面重新加载。

正如olliej所说,你可以改变哈希参数(a.k.a.片段标识符),它不会触发页面重新加载。

答案 3 :(得分:0)

您不想添加历史记录条目吗?只需使用location.replace(..)

答案 4 :(得分:0)

直接回答你的问题:这是不可能的。你问如何在不去另一页的情况下进入不同的页面,这是无稽之谈。

虽然如果页面已经在浏览器缓存中(并且已经设置了远期日期),那么从技术上讲,用户可以转到该页面而无需再次从服务器请求它。但你无法保证任何事情。

我认为你可能正在寻找的东西就像使用框架一样。在example.com/index.html上,您可以设置完整尺寸的框架,并添加不同的页面,例如example.com/page2.html。然后框架内的任何链接都不会更改浏览器中列出的URL。有关信息,请参阅this tutorial

答案 5 :(得分:0)

您所要求的内容称为URL spoofing

Any browser allowing this存在严重的安全问题。