2017-10-06 40 views
4

我正在查看https://www.dotnetperls.com/,当我点击页面中的'C#'链接加载不同的内容,我没有看到浏览器的网络选项卡中的任何Ajax请求,也没有更改URL。网站中的数据如何在没有Ajax请求或网址更改的情况下更改?

这是如何实现的?

+0

可能是一个javascript事件与jquery联系来呈现列表。在浏览器中按F12键,并在JavaScript函数中放置一个断点,您会发现正在调用哪个函数。 – Kell

+1

你可以在浏览器中自己调试,看看会发生什么。但几乎可以肯定的是,它只是使用JavaScript来显示和导航到之前加载但使用CSS样式隐藏的某些内容。非常正常,基本的东西真的。 HTML内容实际上也可能由JavaScript代码实时创建,然后插入到DOM中。 – ADyson

回答

5

这是因为当您第一次访问该网站时,内容已经加载到页面中。如果您在Chrome浏览器中查看事件监听器以获取链接,您会看到JavaScript被钩入以单击更改呈现的HTML元素。

4

整个内容被加载到第一个请求中,当你点击“C#”时,默认内容和其余部分将使用JavaSript显示,而不加载任何新内容。

如果您在浏览器中点击“检查此元素”以查看“C#”链接,您将看到内容在显示“新”内容后仍然在页面中,它只是隐藏起来。