Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/475.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 更快的页面链接加载_Javascript_Jquery - Fatal编程技术网

Javascript 更快的页面链接加载

Javascript 更快的页面链接加载,javascript,jquery,Javascript,Jquery,我正在浏览这个网站 我注意到当点击左侧的导航时,url地址会立即改变 他们还使用“淡出”和“淡入”窗帘,使页面之间的过渡无缝 我想知道你会用什么样的方法来实现这一点 我知道使用JS你可以更改url,但只有标签url。。。正确的? 或者是因为他们有一个延迟为0的超高速服务器 你认为他们正在把所有东西都放在同一个dvi容器中吗 谢谢因为有些年你可以使用html5历史api: 它将允许您非常自由地操作url。 例如,当您滚动到一个新的节时,您可以将该节放在浏览器url的末尾。因为有些年您可以使用ht

我正在浏览这个网站 我注意到当点击左侧的导航时,url地址会立即改变

他们还使用“淡出”和“淡入”窗帘,使页面之间的过渡无缝

我想知道你会用什么样的方法来实现这一点

我知道使用JS你可以更改url,但只有标签url。。。正确的? 或者是因为他们有一个延迟为0的超高速服务器

你认为他们正在把所有东西都放在同一个dvi容器中吗


谢谢

因为有些年你可以使用html5历史api:

它将允许您非常自由地操作url。
例如,当您滚动到一个新的节时,您可以将该节放在浏览器url的末尾。

因为有些年您可以使用html5历史api:

它将允许您非常自由地操作url。
例如,当您滚动到一个新的节时,您可以将该节放在浏览器url的末尾。

这是正在运行的历史API。查找更多详细信息


尝试
pushState
replaceState
方法,这些方法应该会让您产生这种行为。要对这些进行更精确的控制,您可能还需要查看
popState

这是正在运行的历史API。查找更多详细信息


尝试
pushState
replaceState
方法,这些方法应该会让您产生这种行为。为了对这些进行更精确的控制,您可能还想看看
popState

这与历史API没有什么关系。(他们正在使用该API来更新显示的URL,但这只是网站工作原理的一个小细节;它本身不会产生这种行为。)

此特定站点正在运行客户端框架。(我在缩小的代码中没有看到任何明显的线索来说明是哪一个。)

站点内的链接作为AJAX请求处理。他们使用相同的端点进行新页面加载和XHR调用,并检查
X-request-With
标题,以确定是发送完整的服务器呈现的HTML文件(包括完整站点的框架)还是只发送特定页面的内容(将嵌入已加载站点的客户端)

作为证据:这将返回完整的站点(如用户首次访问该URL时):

这只返回“关于”内容(就像用户在加载站点后单击“关于”链接):

(在浏览站点时,您还可以通过在浏览器控制台中查看“网络”面板来查看这一点。)


当然,仅加载单个页面的内容要比加载整个页面的HTML(及其CSS和JS)快得多,并且允许您在AJAX调用过程中添加平滑效果,如交叉淡入和动画。

这与历史API关系不大。(他们正在使用该API来更新显示的URL,但这只是网站工作原理的一个小细节;它本身不会产生这种行为。)

此特定站点正在运行客户端框架。(我在缩小的代码中没有看到任何明显的线索来说明是哪一个。)

站点内的链接作为AJAX请求处理。他们使用相同的端点进行新页面加载和XHR调用,并检查
X-request-With
标题,以确定是发送完整的服务器呈现的HTML文件(包括完整站点的框架)还是只发送特定页面的内容(将嵌入已加载站点的客户端)

作为证据:这将返回完整的站点(如用户首次访问该URL时):

这只返回“关于”内容(就像用户在加载站点后单击“关于”链接):

(在浏览站点时,您还可以通过在浏览器控制台中查看“网络”面板来查看这一点。)


当然,只加载单个页面的内容要比加载整个页面的HTML(及其CSS和JS)快得多,并且允许您在AJAX调用过程中添加平滑效果,如交叉淡入和动画。

除了已回答的内容外,无缝过渡的方式是(最有可能)使用像angular或react这样的前端框架。在回答问题的基础上,他们实现无缝过渡的方式(最有可能)是使用像angular或react这样的前端框架。你能提供一个实际的基线示例吗?对不起,我不确定你的意思是什么?实现上面详细描述的代码。我们有网站作为结果的例子,我们有你对正在发生的事情的解释,但没有简单的代码示例,当然,除非代码不是简单的而是繁琐的。是的,“客户端/SPA框架如何工作”是一个巨大的主题,我恐怕它不是那种可以分解为简单代码示例的东西。如果有人想复制这类东西,我建议从这里开始,有很多关于Angular、React、Vue、Meteor等的入门教程。当然,这肯定是在使用history API,但当然还有很多其他的东西。在查看代码时,我反复发现一个单词“shopify”,因此我猜该网站是建立在他们的平台上的(请参阅)。这样的平台需要花费大量的精力来编写。我可以看到对jquery的引用,其他内容可能只是一个专有的shopify框架。根据维基百科的报道,“该公司报告有超过500000名商家在使用其平台”,因此他们有资源来构建先进的东西。这不仅仅是这个网站使用的,你能提供一个实际的基线例子吗?对不起,我不知道你的意思是什么?代码实现了你上面详细描述的。我们有网站作为结果的例子,我们有你的解释,但没有简单的代码示例,当然,除非代码不是简单的,而是cu
curl 'https://amaioswim.com/about'
curl 'https://amaioswim.com/about' -H 'X-Requested-With: XMLHttpRequest'